python网站源码_盗版网站看小说太多广告?30行python爬取全网全本小说(附源码)...

今天一个远房同学问我有没有网站可以下载小说,我说没有啊 你要找哪个小说(心里有点鄙视他 ,心想现在什么小说在手机上很多app不是都能找到吗,自信搜索能力的我准备帮人帮到底)

e3fc9888cb9c8a7e596605b51e97b99d.png

但是他说,app上广告太多,并且他看小说是装备上班摸鱼的时候,不方便拿出手机,然后我问是什么小说,他说《医圣之最强狂兵》,我当然没看过了,搜索了半天只找到了一些人分享的网盘地址,点进去发现里面只有前几章的txt,——预知后事如何请加下面VX….$%#^%&^&&a

我一脸天真的加了一下,还以为是只想凑点击率和关注量的分享小说的公众号,结果是个人账号,=。=,对,就如你所想,六块钱红包她就会发给我小说。

算了吧,有那钱干点啥不好,自己又不是不会爬虫。

于是随手写了下面的程序。

网站如下:

44afe77f49854cbc35c2b0e1597b8d9e.png
0abd1cec0d0336583c0cf2150a60a65d.png
# -*- coding: utf-8 -*-from bs4 import BeautifulSoupimport requestsimport codecsdef get_url_list(url): html = requests.get(url) soup = BeautifulSoup(html.content, 'lxml')#content如果换成text会有乱码 url_list = [] list = soup.select("#list > dl > dd > a") for i in list: i = i.get("href") i = 'http://www.biqugecom.com' + i url_list.append(i) url_list = url_list[9:-1] print url_list return url_listdef get_data(url): html = requests.get(url) soup = BeautifulSoup(html.content, 'lxml') fo = codecs.open('output.txt', 'a+', 'utf-8'); # 以二进制写入章节题目 需要转换为utf-8编码,否则会出现乱码 section_name = soup.select("#wrapper > div.content_read > div > div.bookname > h1")[0].text print section_name fo.write(('' + section_name + '')) section_text = soup.select("#content") for x in section_text: a = x.text.replace('readx();', '').replace('www.biqugecom.com/20/20341/', '') fo.write((a)+ '') # 以二进制写入章节内容 fo.close() # 关闭小说文件if '__main__' == __name__: url = 'http://www.biqugecom.com/34/34055/' url_list = get_url_list(url) for n in url_list: get_data (n)

最后将3.24MB的txt文件交给他的时候,他是内牛满面的=。=

因为程序太简单了,所以就不做详细的说明了。

如果有任何问题可以在留言交流或者自行google

4d93975ca7346397ea9bbe57c8139937.png

学习从来不是一个人的事情,要有个相互监督的伙伴,工作需要学习python或者为了入行、转行学习python的伙伴可以私信回复小编“学习”,资源共享和大牛面对面交流

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值