python 解析网页html,提取需要的页面信息
2021/10/18 17:13:01
本文主要是介绍python 解析网页html,提取需要的页面信息,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
爬虫网络请求方式:urllib、 requests, scrapy(框架)、 pyspider(框架)
爬虫数据提取方式:正则表达式, bs4, lxml, xpath, css
Python网络爬虫四大选择器(正则表达式、BS4、Xpath、CSS)总结
如果你的爬虫瓶颈是下载网页,而不是抽取数据的话,那么使用较慢的方法(如BeautifulSoup) 也不成问题。如果只需抓取少量数据,并且想要避免额外依赖的话,那么正则表达式可能更加适合。
通常情况下,lxml(该模块可以实现xpath和css)是抓取数据的最好选择,这是因为该方法既快速又健壮,而正则表达式和BeautifulSoup只在某些特定场景下有用。
1、获取网页 2、解析数据 --------------------------------------------------------------------------------- import requests from lxml import etree headers = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.97 Safari/537.36'} r = requests.get('https://www.zhihu.com/question/68584669/answer/265070848',headers=headers) s = etree.HTML(r.text) # 获取问题内容 q_content = s.xpath('//*[@class="QuestionHeader-title"]/text()')[0] # 获取关注数和浏览量,这两个属性一样 q_number = s.xpath('//*[@class="NumberBoard-itemValue"]/text()') concern_num = q_number[0] browing_num = q_number[1] # 打印 print('问题:',q_content,'\n','关注数:',concern_num,'\n','浏览量:',browing_num) ---------------------------------------------------------------------------- 问题: 行人重识别(re-ID)与跟踪(tracking)有什么区别? 关注数: 535 浏览量: 68,555
这篇关于python 解析网页html,提取需要的页面信息的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2025-01-03用FastAPI掌握Python异步IO:轻松实现高并发网络请求处理
- 2025-01-02封装学习:Python面向对象编程基础教程
- 2024-12-28Python编程基础教程
- 2024-12-27Python编程入门指南
- 2024-12-27Python编程基础
- 2024-12-27Python编程基础教程
- 2024-12-27Python编程基础指南
- 2024-12-24Python编程入门指南
- 2024-12-24Python编程基础入门
- 2024-12-24Python编程基础:变量与数据类型