推广 热搜: page  音视频  使用  个数  搜索引擎  选择  父亲  百度  企业  可以 

【GUI软件】用python采集百度搜索结果,并开发成exe桌面软件!

   日期:2024-12-21     作者:8r2jv    caijiyuan   评论:0    移动:http://ww.kub2b.com/mobile/news/9916.html
核心提示:你好,我是 @马哥python说 的小迷弟。 但是,很多不懂python编程的小伙伴无法使用它,非常痛苦!

你好,我是 @马哥python说 的小迷弟。

但是,很多不懂python编程的小伙伴无法使用它,非常痛苦

于是,我把这个程序封装成了一个桌面软件(exe文件,无需python运行环境也可以使用。

通过python爬虫技术,爬取百度搜索结果数据,包含字段

页码、标题、百度链接、真实链接、简介、网站名称。

并把源码封装成exe文件,方便没有python环境,或者不懂技术的人使用它。

首先,导入需要用到的库

 

定义一个请求头

 

cookie是个关键,如果不加cookie,响应码可能不是200,获取不到数据,而且cookie值是有有效期的,需要定期更换,如果发现返回无数据或响应码非200,尝试替换最新的cookie。

按照图示顺序,依次

  1. 点击Network,进入网络页
  2. 点击All,查看所有网络请求
  3. 选择目标链接,和地址栏里的地址一致
  4. 查看Request Headers请求头
  5. 查看请求头里的cookie,直接右键,Copy value,粘贴到代码里

wd=后面是搜索关键字"马哥python说",pn=后面是10(规律:第一页是0,第二页是10,第三页是20,以此类推,其他URL参数可以忽略。

每一条搜索结果,都是class=“result c-container new-pmd”,下层结构里有简介、链接等内容,解析内部子元素不再赘述。

所以根据这个逻辑,开发爬虫代码。

 

其中,获取到的标题链接,一般是这种结构

http://www.baidu.com/link?url=7sxpKz_qoESU5b1BHZThKRAnXxPngB5kx1nZdUBCaXh7a4BgUgx9Zz-IqpeqDZTOIjvfY0u6ebnJdVWIfm5Tz_

这显然是百度的一个跳转前的地址,不是目标地址,怎么获取它背后的真实地址呢

向这个跳转前地址,发送一个请求,然后逻辑处理下

 

如果响应码是302,就从响应头中的Location参数获取真实地址。

如果是其他响应码,就从响应内容中用正则表达式提取出URL真实地址。

把爬取到的数据,保存到csv文件

 

to_csv的时候需加上选项(encoding=‘utf_8_sig’,否则存入数据会产生乱码,尤其是windows用户

界面部分代码

 
 

软件运行过程中,会在同级目录下生成logs文件夹,文件夹内会出现log文件,记录下软件在整个运行过程中的日志,方便长时间运行、无人值守,出现问题后的debug。

部分核心代码

 
 

演示视频
【爬虫GUI演示】用python爬百度搜索,并开发成exe桌面软件


本文地址:http://ww.kub2b.com/news/9916.html     企库往 http://ww.kub2b.com/ ,  查看更多

特别提示:本信息由相关用户自行提供,真实性未证实,仅供参考。请谨慎采用,风险自负。

 
 
更多>同类最新文章
0相关评论

文章列表
相关文章
最新动态
推荐图文
最新文章
点击排行
网站首页  |  关于我们  |  联系方式  |  使用协议  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报  |  鄂ICP备2020018471号