我是如何制作知乎问答收集工具的?
标签:Pyhon源码
教程
知乎爬虫
此贴仅作技术交流!
效果展示
之前发过一款软件知乎问答收集器,没想到有这么多人喜欢,我看到评论区还有和我一样的Pyhon爱好者求源码,那么今天源码来啦!这次的源码跟我以前发的代码思路有点不一样了,这次采用严格面向对象的编程思想来写的代码,小白看起来可能就比较吃力了,所以我大概讲解一下,如果讲得不好也请大佬轻喷,本次编程使用的知识点主要有以下:
- 面向对象的编程方法,代码里一切皆为对象
- Tkinter包的使用,绘出普通用户也能使用的软件界面
- 伪装请求头headers,使网站无法辨认出访问它的是Python还是浏览器。
- 利用cookie登陆,解除未登录用户只能爬取一页的限制。
- 分析ajax请求,推测每个参数代表的意义。
- 利用json包解析返回的json数据
- 用csv包把数据存储在csv文件中(Excel可以直接打开)
一共三个Python文件,第一个文件Spider.py是我第一次写的,单文件补上cookie可以运行没有依赖其它文件。后面的SSpider.py和tk_main.py是我写的图形界面,程序入口为tk_main.py文件,SSpider.py也就是把Spider.py的代码复制过去做了一点点适合图形界面的修改,然后作为包导入tk_main.py使用,发出来的那个软件就是这两个文件进行的打包,代码量较大,我就不全部发在贴子里,而把完整的三个文件代码都分享到Github,但是讲解我就讲解第一个Spider.py文件,后面的图形界面tkinter的话你如果学过一看就懂,没学过我也不好讲,你们就自己看咯。Github源码点击这里就可以看到啦!不会用Github的坛友没关系,我还会在下面的附件传一份!