网神通电脑维修:电脑维修、数据恢复、解密加密、整机组装、维护升级、IT外包 、监控安装维护、网络维护、打印机共享与维修、网站建设与维护☑诚信 ☑效率 ☑快速 ☑低价 ☑专业 免费咨询:13927420089

python爬虫采集网站数据

18 12月
作者:网神通|分类:源码

1.准备工作:

1.1安装requests: cmd >> pip install requests
1.2 安装lxml: cmd >>  pip install lxml
1.3安装wheel: cmd >>  pip install wheel
1.4 安装xlwt: cmd >> pip install xlwt

2. 编写代码

2.1使用requests.get获取页面

 

编译结果

 

2.2 使用lxml将数据改成xpath结构

 

2.3 精确获取数据

 

 

2.4 使用for in循环输出数据

注意:print(tr.xpath(".//td/text()"))中 如果没有加.只会循环相同的内容,上图就是没有加点

正确做法

 

2.5 只获取需要的数据

 

 

3.使用xlwt创建excel表,存储数据

3.1 创建excel表

 

运行结果

 

 

3.2 将数据添加到excel表中

 

3.3 批量添加数据(让j累加)

 

3.4 多页数据添加

 

最终代码

复制代码
import requestsfrom lxml import etreeimport xlwt#设置浏览器的请求头,告诉服务器我们是从浏览器来的,作用是阻止被网站反爬headers = {         'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.103 Safari/537.36',         'Accept-Encoding': 'gzip, deflate',         'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3',         'Connection': 'keep-alive'} 

#创建一个工作簿f = xlwt.Workbook()#添加一个工作表sheet3d = f.add_sheet("3d", cell_overwrite_ok=True)#往表里添加表头row0 = ['开奖日期','期号','中奖号码1','中奖号码2','中奖号码3','销售额(元)','返奖比例']for i in range(0,len(row0)):

         sheet3d.write(0,i,row0[i])

j = 1 

for i in range(1, 21):

         url = "http://kaijiang.zhcw.com/zhcw/html/3d/list_{}.html".format(i)         #发送请求 得到数据
         response = requests.get(url=url,headers=headers)         #print(response.text)

 

         #将数据改成xpath结构
         res_xpath = etree.HTML(response.text)

         trs = res_xpath.xpath('/html/body/table//tr')         # print(trs)

 

         # 写入循环

         for tr in trs[2:-1]:

                   sheet3d.write(j,0,tr.xpath("./td[1]/text()")[0])

                   sheet3d.write(j,1,tr.xpath("./td[2]/text()")[0])

                   sheet3d.write(j,2,tr.xpath("./td[3]/em[1]/text()")[0])

                   sheet3d.write(j,3,tr.xpath("./td[3]/em[2]/text()")[0])

                   sheet3d.write(j,4,tr.xpath("./td[3]/em[3]/text()")[0])

                   sheet3d.write(j,5,tr.xpath("./td[4]/text()")[0])

                   sheet3d.write(j,6,tr.xpath("./td[5]/text()")[0])

                   j += 1;

f.save('3D.xls')


本文链接:http://www.wstdnwx.com/?id=599 转载需授权!

分享到:
浏览214 评论0
返回
目录
返回
首页
地球上第一个人类是谁?又从何而来?答案让人细思极恐 Python爬虫实现百度图片自动下载

发表评论

扫一扫,加我为微信好友加我为微信好友

遇到问题?请给我们留言

请填写您的电话号码,我们将回复您电话

您是本站第44名访客 今日有0篇新文章 当前在线 6 人

分享:

支付宝

微信

歌曲 - 歌手
0:00