Python 爬虫:爬《权力的游戏》中英对照版

阅读: 评论:0

Python 爬虫:爬《权力的游戏》中英对照版

Python 爬虫:爬《权力的游戏》中英对照版

VOA英文网有中英对照版 《权力的游戏》 .html,但是只能在线看,而且每次不小段的太不方便了,想把它爬下来整理成大篇的,放到kindle上慢慢看。手工点了几页,每页复制到文本文件里,工作量太大了。于是就有了自己写个爬虫自动抓取的想法。说干就干。

 

.html  先分析它的HTML源:

程序的功能就是要取每页特定部分的内容,剔除掉不要的内容,对取到的内容加工写入txt文件,并抓取下一页的地址。一页一页循环抓取。。

主要代码如下:

#!/usr/bin/python
# -*- coding: gbk -*-
# by gnolux 20190524
# email: fangkailove@yeahfrom urllib import request
import reurl = '.html'
title = '权力的游戏:第001期:restart'for page in range(0,1210):response = request.urlopen(url)html = ad()html = html.decode("utf-8")rstr = r'(<p>.*?</p>)'s=re.findall(rstr,html,re.S)for i in range(len(s)):if s[i].startswith("<p>《权力的游戏》是一部"):s[i]=''if s[i].startswith("<p>背景介绍:"):s[i]='n-----------------n'if s[i].startswith("<p>来自"):s[i]=''#ct =  'n'.join(s)title=title.split(':')[2]print(title)#print(url)#print(ct)with open('d:/%s.txt'%title, 'w') as f:f.write("<h>%s</h>"%title)f.write("<p>%s</p>"%url)f.writelines(s)rstr = r'<div id="next"> 下一篇:<a href='(.*?)'>(.*?)</a>'s=re.findall(rstr,html,re.S)if len(s) == 1:url,title = s[0]url=''+urlelse:print(ct)brea

上述写文件部分,没有合并到一个文本文件中,而是每个单独一个文件,是因为网页发布不是完全有序的。以章节作文件名,全爬下来后,按文件名重排序并合并,就能得到有序的完整书内容了。

看爬下的结果:

再用工具把文件合并转换成 mobi . kindle就能慢慢看了。

转载请注明: 转自

本文发布于:2024-01-30 19:13:36,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170661327822218.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

上一篇:《权力与纷争
标签:爬虫   权力   中英对照   游戏   Python
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23