教你用Python访问一零二四网站,拒绝伸手党

教你用Python访问一零二四网站,拒绝伸手党

 

教你用Python访问一零二四网站,拒绝伸手党

 


学习Python中有不明白推荐加入交流裙
                                                               号:735934841
                                                                                         群里有志同道合的小伙伴,互帮互助,
                                                                                                                                                      群里有免费的视频学习教程和PDF!

教你用Python访问一零二四网站,拒绝伸手党

 

教你用Python访问一零二四网站,拒绝伸手党

 

我感觉这个虫子全网***最方便***,最牛逼,最便捷,***最能解决实际问题***的虫子!活学活用,真正的让代码方便我的生活,这才是我编写程序索要达到的目的。

教你用Python访问一零二四网站,拒绝伸手党

 

教你用Python访问一零二四网站,拒绝伸手党

 

我们希望变成的样子

论坛的帖子按照时间发布顺序排列,这样看每天的新内容就很省事儿。

如果我们要写一个爬虫来解决的话,大致结构应该如下:

教你用Python访问一零二四网站,拒绝伸手党

 

教你用Python访问一零二四网站,拒绝伸手党

 

上面的结构很简单,那么简单的流程就是:我们先配置好本地的config.json文件,然后启动程序,爬虫会自动根据配置好的信息,然后抓取各个板块前几页的内容,根据帖子发帖时间,筛选爬出出来信息,随后,将获取到的信息按照时间排序,最后输出成html格式的文件,使用本地的网页浏览器打开。浏览器里面可以看到帖子的id,帖子的标题以及帖子的发布时间。通过点击帖子的标题,可以跳转到社区的帖子。这里还是要推荐下小编的Python学习裙:【七 三 五,九 三 四,八 四 一】不管你是小白还是大牛,小编我都欢迎,不定期分享干货,包括小编自己整理的一份2018最新的Python资料和0基础入门教程,欢迎初学和进阶中的小伙伴。在不忙的时间我会给大家解惑。

这样,内容丰富的小草网站,就直接变成了我们本地写的最简单的***html***文件。

我们整理后的网站首页:

教你用Python访问一零二四网站,拒绝伸手党

 

教你用Python访问一零二四网站,拒绝伸手党

 

教你用Python访问一零二四网站,拒绝伸手党

 

教你用Python访问一零二四网站,拒绝伸手党

 

Url_manager

通过一个dict来存储板块名称和对应的板块URL,提供一些简答的方法来操作URL。

Html_download

通过使用requests模块来进行网页的访问。从而拿到网页数据,为后面步骤的解析提供基础。

这里进行网络请求的时候,由于1024网站做了反爬处理,我添加了不同的HTTP header。目前还算比较好用。表头信息在user_agents文件中。Html_parser通过BeautifulSoup来对html做解析处理。每一个帖子都是有一个唯一id的。帖子都封装到CaoliuItem中,然后将结果输出到html_outputer中。这里是通过html的tag来做的寻找,并不是通过正则表达式。可能有点僵。

Html_outputer

这个是将之前收集到的爬虫解析结果,整理成html文件的类。最终结果有一个index页面,每个版块还有自己的页面。他们之间相互链接在一起,点击起来爽爽的,炒鸡方便。需要改进的地方 TODO整体结构虽然清晰,但是整体结构还需要优化。要做到像Scrapy那样强大的虫子,得一步一步来。目前爬虫能力比较弱,没有用到多线程爬虫。下一个版本可以加入多线程,这样既能提升速度,又能提升质量。

parser的解析还是太依赖网站的布局。若是网站布局发生改变,parser就得修改。这个问题是所有爬虫的通病,我还在想办法把这里做的更活一些,不要这么死板。

output的html文件美观度不够。下一版本,想将解析出来的东西,能够和MongoDB联动,算是本地保存一份吧。因为这样就能够看到之前的帖子信息。

教你用Python访问一零二四网站,拒绝伸手党

猜你喜欢

转载自www.cnblogs.com/52lmx/p/10174939.html