我正在尝试将一些我需要的插件放在一起,以便与 html 页面交互。我需要的范围从简单的浏览和与网页的按钮或链接交互(如“在此文本框中写入一些文本并按此按钮”)到解析 html 页面并向服务器发送自定义 get/post 消息。 我正在使用 Python 3,到目前为止,我有用于简单网页加载、自定义获取和发布消息的请求, BeautifulSoup 用于解析 HTML 树,我正在考虑尝试 Mechanize 进行简单的网页交互。
还有其他库与我目前使用的 3 个库类似吗?是否存在某种所有 Python 库都聚集的地方?因为我有时发现很难找到我想要的东西。
最佳答案
用于网络抓取的工具/库集实际上取决于多种因素:目的、要抓取的页面的复杂性、速度、限制等。
以下是当今 Python 网络抓取世界中流行的工具列表:
还有 HTML
解析器,这些是最流行的:
Scrapy
可能是 Python 中为网络抓取而创建的最好的东西。它确实是一个简单明了的网络抓取框架,Scrapy
提供了您可以想象的网络抓取的一切。
注意:如果加载、形成页面涉及大量 AJAX 和 js 内容,您将需要一个真正的浏览器来处理它。这就是selenium有帮助 - 它使用真正的浏览器,允许您在 WebDriver
的帮助下与其进行交互。
另请参阅:
- Web scraping with Python
- Headless Selenium Testing with Python and PhantomJS
- HTML Scraping
- Python web scraping resource
- Parsing HTML using Python
希望有帮助。
关于python - 在Python中浏览/解析html页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23136157/