动态网页抓取( stringparameter修改23行代码的seed:不然可能会爬不到东西 )

优采云 发布时间: 2021-09-24 15:07

  动态网页抓取(

stringparameter修改23行代码的seed:不然可能会爬不到东西

)

  

  这时候我们可以考虑,首先我们先获取页面的代码

  然后使用正则表达式搜索符合条件的图片

  但是,后面可能会有重复,只需在获取的列表末尾使用 set 过滤即可。

  理清以上思路后,接下来我们开始搭建爬虫

  ①初始化头☆

  这一步非常重要。如果不构造headers,将被禁止访问==

  headers初始化代码如下,用于将爬虫伪装成浏览器请求,请求用于发起特定的AJAX内容

  

  ②构建动态AJAX请求

  根据上面截图中保存的Query String Parameter参数,我们在构造请求请求时,收录了Params内容

  将获取到的下载图片链接保存到列表中

  

  ③元素选择

  我第一次调试程序的时候,发现得到的链接中有一个以png结尾的链接。这里需要再次过滤列表,保留可以下载图片的链接。

  最后,不要忘记使用 set 来删除列表中重复的元素。

  

  ④最后使用urllib.request.urlretrieve将图片保存到每张图片的下载地址所在列表的指定路径。

  *Pexel一开始也对每张图片的下载地址进行了反爬虫机制的调整,所以下载headers再模拟浏览器^_^

  这一步可以单独写成一个函数,但是我没有这样写,因为我是为了方便。

  

  最后贴两张运行结果图

  控制台的输出:

  

  下载到本地壁纸

  

  完整代码如下:

  ①添加一些输出语句以便调试程序

  ②如果要粘贴直接使用,记得打开页面查看查询字符串参数,修改23行代码的*敏*感*词*内容!否则你可能无法攀爬东西

  

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线