java爬虫抓取网页数据(用Python实现爬虫简单的爬虫预警!i.导入相关库)
优采云 发布时间: 2021-12-10 11:08java爬虫抓取网页数据(用Python实现爬虫简单的爬虫预警!i.导入相关库)
还有Scrapy和Scrapy-redis框架,让我们开发爬虫非常容易。
Python提供了丰富的库,让我们编写程序更加方便。
一旦你完成了你的第一个爬虫
只说不说,看看爬虫程序怎么写!
在抓取之前,我们需要检查这个网页是否有抓取协议。
通常爬虫协议在网站之后的robots.txt文件中。我们抓取的内容一定不能在爬虫协议中被禁止。以百度搜索为例:
以百度搜索为例-图
大多数网站可以通过在URL后添加/robots.txt来查看robots文档。
一个简单的爬虫写作思路:
我们通过我们编写的爬虫程序向目标站点发起请求,即发送收录请求头和请求体的Request请求。(下面会写) 那么。如果接收到Request的服务器可以正常响应,那么我们就会收到一个Response响应,内容包括html、json、图片、视频等,就是网页的源代码。
作者的博客图
3. 使用接收到的源码中的正则表达式,以及Beautifulsoup、pyquery等第三方解析库,解析html中的数据。最后,根据需要,我们可以将提取的数据保存在数据库或文件中。
哦,差点忘了。在Python中实现爬虫,需要一个好帮手——Beautiful Soup。
Beautiful Soup 是一个 Python 库,可以从 HTML 或 XML 文件中提取数据。它可以使用您喜欢的转换器来实现文档导航、搜索和修改文档的常用方式。Beautiful Soup 将为您节省数小时甚至数天的时间。工作时间。” (来自BeautifulSoup的官方描述)
urllib 是一个采集多个使用 URL 的模块的包,其中:
urllib.request 打开和读取 URL
urllib.error 收录 urllib.request 抛出的异常
urllib.parse 用于处理 URL
urllib.robotparser 用于解析 robots.txt 文件
没看懂?没关系。我们来看看一个简单的爬虫程序是如何实现的:
非常详细的注释警告!
一世。导入相关库
#首先,我们要导入urllib的request库,它可以实现向服务器发送request请求的功能
import urllib.request
#之后,我们需要用re库来解析我们接收到的内容,也就是网页代码
import re
#这个os库用来在本地创建一个目录,用于存放我们爬取的照片
import os
ii. 程序开始
<p>#程序开始,我们定义一个fetch_pictures函数来实现爬虫的主要功能
def fetch_pictures(url):
#首先,我们定义一个html_content变量来存放网页的HTML源代码
html_content = urllib.request.urlopen(url).read()
#接下来,使用正则表达式,指定匹配的特征为(.*?)
r = re.compile('