tags:
当前位置 : 首页 > 新闻中心 > 明星娱乐 > 正文

第3章 男士请进,女生勿看!!用Python爬取某网站小姐姐超好看图片(三)

来源:本站作者:时间:2024-04-27 09:20:58点击:
第3章 男士请进,女生勿看!!用Python爬取某网站小女孩姐超好看图片(三)

本文是系列教程终极篇--【实战开发】“爬取某网站小女孩姐超好看图片(三)”欢迎查看系列教程文章!!

在这里,我们以爬取“不羞涩”网首页的所有标签下的小女孩姐信息为例进行说明讲解,网址如下:http://www.buxiuse.com/?cid=3

我们需要爬取的信息内容(一)有:不同标签名称及地址,如下:

我们需要爬取的信息内容(二)有:所有页面网址,如下:

我们需要爬取的信息内容(三)有:所有小女孩姐的封面图片地址、标题、收藏量、详情链接地址,如下:

主要需求内容就是上述这些,下面一起来分析及学习哈!

对于爬取所有分类标签与链接的信息,基本内容如下图所示,我们需要爬取的是所有、好X妹等标签名及链接信息,如下:

查看网页源码内容,如下:

编写获取所有分类标签与链接的代码内容,参考如下:import requestsimport lxml.htmldef parse_girl_url(temp_url): headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.164 Safari/537.36"} response = requests.get(temp_url,headers=headers) html_ret = response.content.decode("utf-8") return html_retdef catch_girl_title_list(temp_text): metree = lxml.html.etree parser = metree.HTML(temp_text,metree.HTMLParser()) li_list = parser.xpath("https://ul[@class='nav nav-pills']/li") # print("长度:",len(li_list)) temp_gilr_list = [] # 遍历 for li_element in li_list: item = [] # 标签 title = li_element.xpath("https://zhuanlan.zhihu.com/p/a/@href")[0] item.append(title) # 链接地址 title_hrefurl = li_element.xpath("https://zhuanlan.zhihu.com/p/a/text()")[0] item.append(title_hrefurl) temp_gilr_list.append(item) return temp_gilr_listdef main(): # 解析网址 http_url = "http://www.buxiuse.com/?cid=3" girl_html_contnet = parse_girl_url(http_url) # print(girl_html_contnet) # 获取数据 girl_title_list = catch_girl_title_list(girl_html_contnet) print("结果:",girl_title_list)if __name__ == '__main__': main()

运行结果如下:

下面一起来看看所有页面网址的效果,我们来打开如下页面查看下:http://www.buxiuse.com/

为了便于获取页面数据,此处暂时爬取4页为例说明,网址规律效果如下:页面数网址第1页http://www.buxiuse.com/第2页http://www.buxiuse.com/?page=2第3页http://www.buxiuse.com/?page=3第4页http://www.buxiuse.com/?page=4

观察上述规律,可以分析第1页的网址应该为:http://www.buxiuse.com/?page=1

经过分析处理,果然可以打开页面内容!再分析网址内容,我们发现就是跟上述标签链接地址添加结尾内容即可拼接成标准的网址,例如:http://www.buxiuse.com/ 拼接 ?page=3

下面我们再一起来爬取下页面网址,代码如下:for element in girl_title_list: # 拼接网址 index_url = element[0] # 4个页面 page_url_list = [] for page in range(1,5): page_url = index_url+"?page="+str(page) page_url_list.append(page_url) # 添加到结尾处 element.append(page_url_list)# 所有网址print("所有页面网址:",girl_title_list)

运行效果:

接着,融入前面文章的(一)、(二)就可以形成完整的一个项目啦!!!

【来关注“码了个蛇”,持续更新Python、Android技术分享!!年轻小粉丝们有企图学习编程者,私?联系!】

图文推荐