- 学习beautifulsoup
BeautifulSoup库是解析、遍历、维护“标签树”(例如html、xml等格式的数据对象)的功能库
查看网页源代码,通过BeautifulSoup能帮助我们解析网页并获取内容。
BeautifulSoup[Tag,Name,Attributes,NavigableString,Comment]
]
from bs4 import BeautifulSoup
import requests
url = ‘http://www.dxy.cn/bbs/thread/626626#626626’
r = requests.get(url)
demo = r.text # 服务器返回响应
soup = BeautifulSoup(demo, “html.parser”)
“”"
demo 表示被解析的html格式的内容
html.parser表示解析用的解析器
“”"
print(soup) # 输出响应的html对象
print(soup.prettify()) # 使用prettify()格式化显示输出
find函数用法:
find(name, attrs, recursive, text, **wargs) # recursive 递归的,循环的
这些参数相当于过滤器一样可以进行筛选处理。不同的参数过滤可以应用到以下情况:
name——需检索标签名
text——查找文本
attrs——标签内属性值
recursive——是否对子孙全部检索,默认True
基于函数,正则表达式的查找
find_all函数用法:
常用通过find_all()方法来查找标签元素:find_all(name, attrs, recursive, string, **kwargs) ,返回一个列表类型,存储查找的结果
name——对标签名称的检索字符串
attrs——对标签属性值的检索字符串,可标注属性检索
recursive——是否对子孙全部检索,默认True
string——<>…</>中字符串区域的检索字符串
- 使用beautifulsoup提取丁香园论坛的回复内容
输出结果:
- 学习xpath
XPath 是使用路径表达式能在 XML 文档中进行检索的语言
XPath 有七种类型的节点:元素、属性、文本、命名空间、处理指令、注释以及文档节点(或称为根节点)。
下面列出了最有用的路径表达式:
- 使用xpath提取丁香园论坛的回复内容