重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
Python如何爬取爱徒网素材下载链接,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
成都创新互联公司坚持“要么做到,要么别承诺”的工作理念,服务领域包括:成都网站设计、网站建设、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的南江网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!
平时都是直接爬取图片,但是有些时候只想要个别的图该怎么办呢?
爬取爱徒网素材下载地址
通过点击素材进入素材详情页,可以看到本地下载地址,多复制几个素材的下载地址链接:
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又是什么呢
原本想着网页数据里面是否有接口数据可以直接找到这个参数,在开发者工具里面搜索并没有这个参数,看一下网页源代码里面是否有这个下载链接~
有这个链接的话,咱们获取链接之后就可以直接下载~
可以发现,咱们需要的数据都在网页的标签里面,请求网页获取返回数据
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如何爬取爱徒网素材下载链接的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注创新互联行业资讯频道,感谢各位的阅读!