2.6 任务实现
本任务将实现使用BeautifulSoup库、lxml库和requests库完成对百度标题的爬取和解析任务。
1)在Python文件中导入requests库和BeautifulSoup库。
![](https://epubservercos.yuewen.com/F5B70F/17977546101607006/epubprivate/OEBPS/Images/55_07.jpg?sign=1739224485-F6YFQXKXokIPSWv7sRIihUlehKYep0da-0-f58663ba906e73c7b08d4ac97b5a8d10)
2)使用requests.get()方法获得指定页面数据。
![](https://epubservercos.yuewen.com/F5B70F/17977546101607006/epubprivate/OEBPS/Images/55_08.jpg?sign=1739224485-Wu5W50ESTxPcSM5Q1CjbHau2OMumfs7m-0-38027967757fec796bbeeb350d6af4b6)
3)由于requests对象的默认编码方式不是utf-8,因此可能导致乱码,所以先设置requests.encoding='utf-8'。
![](https://epubservercos.yuewen.com/F5B70F/17977546101607006/epubprivate/OEBPS/Images/56_01.jpg?sign=1739224485-6s6Ru45McqBQout0qzucT6ZActD9Q5Pt-0-9cc5ae6f82430fe789f8def88f40150e)
4)在BeautifulSoup中使用lxml作为解析器,解析request.text得到的页面数据。
![](https://epubservercos.yuewen.com/F5B70F/17977546101607006/epubprivate/OEBPS/Images/56_02.jpg?sign=1739224485-jezAu85fIHWgW4EejHzCdg9APlFxJIvm-0-54e1f691f6d22b4c6c5ccd7de5c25c6b)
5)输出指定的页面标签文本。这里介绍两种方式。
① 直接使用需要查找的标签名。
![](https://epubservercos.yuewen.com/F5B70F/17977546101607006/epubprivate/OEBPS/Images/56_03.jpg?sign=1739224485-9YBP4Vex2Wv41WF9EFlOY7SUpq9aXlXI-0-d0595e7506c10d90b69b41caa6e2cbb5)
② 使用select方法选择需要查找的标签路径。
![](https://epubservercos.yuewen.com/F5B70F/17977546101607006/epubprivate/OEBPS/Images/56_04.jpg?sign=1739224485-dzHMpwY124jdy2kxljQSO9R1wSFJwNa8-0-d56e8189dba92afec95aa077c6544145)
标签路径可以通过浏览器的开发者工具获取。其具体获取方法是:打开指定页面后,按〈F12〉键,打开开发者工具,选择指定的页面元素并右击,在弹出的快捷菜单中选择“Copy”→ “Copy selector”命令,如图2-15所示。
![](https://epubservercos.yuewen.com/F5B70F/17977546101607006/epubprivate/OEBPS/Images/56_05.jpg?sign=1739224485-E8HKWATfDgppCFBb1e2KF0uVGldsK3rO-0-26b81f3b35e494b332a5587434f5ff8e)
图2-15 获得页面元素标签路径
6)显示结果如图2-17所示。
![](https://epubservercos.yuewen.com/F5B70F/17977546101607006/epubprivate/OEBPS/Images/56_06.jpg?sign=1739224485-ZW6eZBhFiH3sQm7K0JAUJ3UsKKVj6jYF-0-17093c2e30ad82c966dce0d866ac4daa)
图2-17 标签查询结果显示
这样就使用requests库和BeautifulSoup库成功地抓取了百度页面中标签为<title>的文本内容。本任务的完整代码如下。
![](https://epubservercos.yuewen.com/F5B70F/17977546101607006/epubprivate/OEBPS/Images/57_01.jpg?sign=1739224485-U0hHWY3woDMj0s4TTAER3ZNqRpAjo1R8-0-cfa42b3c4e99fa8f6c82327737f68a95)