文章采集链接(网上看了一部小说,换个名字,居然要付费了)

优采云 发布时间: 2021-09-29 22:25

  文章采集链接(网上看了一部小说,换个名字,居然要付费了)

  今天在网上看了一本小说。明明是很久以前的小说。我改了名字,我不得不付钱。我很不高兴。通过强大的百度,找到了原版。我很高兴,但我无法下载它。这很难。本来打算把它读下来,然后在我的手机上阅读。我别无选择,只能自己做采集,然后我就下来了;

  导入 urllib.requestimport re

  话不多说,先列出你需要的*敏*感*词*成一个好习惯,也容易别人理解;这个东西在行业里叫做驼峰命名法。

  第一步,我们需要获取主页的源代码:

  def getNoverContent():

  这里我定义getNoverCotent的变量作为代码的核心部分,然后定义html变量

  html = urllib.request.urlopen('目录地址').read()html = html.decode('gbk')

  拿到html内容后,我们先打印出来看看是否检索成功

  打印(html)

  成功了可以把这行代码删掉或者注释掉,养成一个习惯,一步一步来,不容易出错:print(html)

  第二部分是获取我们需要的那部分网页代码:

  我们在网页上调出刚才页面的源码,找到你想要的部分的div采集。这里使用了正则表达式。不明白的可以自学,也可以找个时间写一篇常规文章的介绍;

  请求 = r'

  (.*?)'

  他们之中。*? 这是一个通配符,匹配所有的内容,我们要的是在通配符外面加一个()

  我们这里得到的是目录页的超链接和目录的内容

  req = 桩(req)urls = re.findall(req,html)

  urls变量的内容就是我们想要的超链接和目录内容,打出来看看?

  打印(网址)

  用完记得注释掉

  第三部分,获取章节源码:

  我们用一个for循环来完成这个功能

  对于网址中的网址:

  让我们打印出 url[0] 看看我们是否需要超链接

  #打印(网址[0])

  确认无误后,设置变量novel_urlnovel_url ='如果是部分超链接,在此处添加链接前端' + url[0]novel_title = url[1] chapt = urllib.request.urlopen(novel_url).read ()

  设置编码,在哪里看编码?

  

  这部分网页源码,可以看看是utf-8还是gbk

  chapt_html = chapt.decode('gbk') #获取文章内容 req = r'

  (.*?)

  '#re.S 多行匹配

  毕竟文章的内容还有很多行,这部分不能省了 req = pie(req,re.S) chapt_content = re.findall(req,chapt_html)

  全部 采集 好的,输入并尝试一下?

  打印(章节内容)

  章节内容

  没问题,我们继续第三部分

  第三步,另存为txt并导出:

  with open("fiction name.txt", mode='a+',encoding='utf-8') as f:f.write(novel_title) f.write(chapt_content) f.write("\n")

  最后记得加一行启动代码

  如果 __name__ =='__main__':getNoverContent()

  大功告成,可以把采集全部上传到手机上慢慢欣赏!

  

  大部分代码显示

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线