首页 > 编程语言 > 详细

Python爬取爱徒网素材下载链接,点击链接即可下载

时间:2020-10-05 21:50:37      阅读:28      评论:0      收藏:0      [点我收藏+]

前言

本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理。

平时都是直接爬取图片,但是有些时候只想要个别的图该怎么办呢?

项目目标

爬取爱徒网素材下载地址

技术分享图片

 

技术分享图片

 

通过点击素材进入素材详情页,可以看到本地下载地址,多复制几个素材的下载地址链接:

http://www.aiimg.com/sucai.php?open=1&aid=126632&uhash=70a6d2ffc358f79d9cf71392
http://www.aiimg.com/sucai.php?open=1&aid=126630&uhash=99b07c347dc24533ccc1c144
http://www.aiimg.com/sucai.php?open=1&aid=126634&uhash=d7e8f7f02f57568e280190b4

每个链接的aid不一样,这个应该就是素材的每个ID,后面的uhash又是什么呢
原本想着网页数据里面是否有接口数据可以直接找到这个参数,在开发者工具里面搜索并没有这个参数,看一下网页源代码里面是否有这个下载链接~

技术分享图片

 

有这个链接的话,咱们获取链接之后就可以直接下载~

技术分享图片

 

常规操作:

1.打开开发者工具,查看网页是否返回自己想要获取的数据。

技术分享图片

 

技术分享图片

 


可以发现,咱们需要的数据都在网页的标签里面,请求网页获取返回数据

import requests
url = http://www.aiimg.com/list.php?tid=1&ext=0&free=2&TotalResult=5853&PageNo=1
headers = {
    User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36
}
response = requests.get(url=url, headers=headers)
print(response.text)

 

解析爬取数据

import parsel
selector = parsel.Selector(response.text)
lis = selector.css(.imglist_d ul li a::attr(href)).getall()
for li in lis:
    num_id = li.replace(.html, ‘‘).split(/)[-1]
    new_url = http://www.aiimg.com/sucai.php?aid={}.format(num_id)
    response_2 = requests.get(url=new_url, headers=headers)
    selector_2 = parsel.Selector(response_2.text)
    data_url = selector_2.css(.downlist a.down1::attr(href)).get()
    title = selector_2.css(.toart a::text).get()
    download_url = http://www.aiimg.com + data_url

 

  

技术分享图片

Python爬取爱徒网素材下载链接,点击链接即可下载

原文:https://www.cnblogs.com/hhh188764/p/13771477.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!