这次要爬取的是一个壁纸网站wallhaven,里面有很多用户上传的高清壁纸分享。点击进去会出现一个搜索页面,输入dota2,这就得到了我们要爬取的第一个url:”https://alpha.wallhaven.cc/search?q=dota2&search_image=&“。没错,今天的任务是爬取的是上面dota2专题的所有高清壁纸。
点进页面之后照常往下拉,想看看是否有那种点击翻页之类的东西:
这就懵逼了呀!难道这是遇上了号称最难爬取的动态加载页面???
别着急,慢慢来。。。突然我发现上面的url好像变了:
这样我们得到了第二页的url:”https://alpha.wallhaven.cc/search?q=dota2&search_image=&page=2“。与第一个url进行比较,可以大胆猜测第3页url是后面加个”page=3”。这样的话只要通过字符串处理函数,就能得到dota2专题的所有url。问题是最后一个url是啥呢?
从这里可以看出最后一个url是”page=34”,我们也可以通过抓取来得到这个信息。我们也可以先不抓取,直接拿34这个结果来使用。
从第一页开始,我们先获取图片所在的url。右键直接查看元素:
那个”<>”就表示标签的意思,结果发现url就在a标签下的href属性内。用BeautifulSoup库直接就可以做到这一点,具体可参照官方文档点这里。话不多说,先上代码:
Python爬虫笔记之用BeautifulSoup及requests库爬取
最新推荐文章于 2024-08-22 20:53:24 发布
本文记录了使用Python的BeautifulSoup和requests库爬取壁纸网站wallhaven中dota2专题壁纸的过程。面对动态加载页面,通过分析URL规律获取多页链接,并提取图片URL及真实图片内容,最终成功保存图片。
摘要由CSDN通过智能技术生成