1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > 从入门到入土:Python爬虫学习|实例练手|爬取百度产品列表|Xpath定位标签爬取|代码注释详解

从入门到入土:Python爬虫学习|实例练手|爬取百度产品列表|Xpath定位标签爬取|代码注释详解

时间:2023-05-26 13:48:42

相关推荐

从入门到入土:Python爬虫学习|实例练手|爬取百度产品列表|Xpath定位标签爬取|代码注释详解

此博客仅用于记录个人学习进度,学识浅薄,若有错误观点欢迎评论区指出。欢迎各位前来交流。(部分材料来源网络,若有侵权,立即删除)

本人博客所有文章纯属学习之用,不涉及商业利益。不合适引用,自当删除!

若被用于非法行为,与我本人无关

Python爬虫学习|实例练手|爬取百度产品列表

代码运行结果

代码

import requests#引入request库from lxml import etree#引入xpath定位需要的库headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.130 Safari/537.36'}#浏览器请求头def get_baidu_more():for i in range(1):#套用的自己以前的模板url = '/more/'rs = requests.session()#定义对象r = rs.get(url, headers=headers)#get方法传参r.encoding = 'utf-8'#使用utf-8解码,不然会出现乱码trees = etree.HTML(r.text)#解析文本data=[]#储存功能的几种酚类for i in range(1, 9):#看了看一共九种Theclass = trees.xpath('//*[@id="content"]/h3[{}]/text()'.format(i))#定位data.append(Theclass[0])添加到新的列表中#print(data)#输出测试j=0for i in range(1,90):#爬取每一个功能对应的标签name = trees.xpath('//*[@id="content"]/div[{}]/div[2]/a/text()'.format(i))#功能名称link = trees.xpath('//*[@id="content"]/div[{}]/div[2]/a/@href'.format(i))#功能对应的链接what = trees.xpath('//*[@id="content"]/div[{}]/div[2]/span/text()'.format(i))#功能描述if(name==[]):#当标签内容为空则为大类标签的位置,补全分类print(data[j])j=j+1print(" ")else:print(name[0])print(link[0])print(what[0])print(" ")get_baidu_more()

运行结果

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。