【已解决】小说爬虫疑问

  • Post author:
  • Post category:hostloc
  • Post comments:0评论
  • Post last modified:九月 8, 2020

我用python 写的脚本  获取了目录页面所有的 章节,然后下载的时候总是会下载红框里的章节,并不是从第一章开始下载的,有老哥指点一下吗。我相信LOC 肯定有爬虫大佬
用了@laogui 老哥说的方法 然后搜了一下 following-sibling 定位准确一些

h20 2020-09-08 20:36

这种MJJ都是收费咨询

cgi 2020-09-08 20:36

h20 发表于 2020-9-7 19:44
这种MJJ都是收费咨询

好吧。我再去b站看看

vagrantear 2020-09-08 20:36

大概看了下,你的解析写的有问题,第一个穿的就是红框里的网址,肯定下载的也是那里的

518 2020-09-08 20:36

43行改为

  1. for href in href_s[12:]:

vagrantear 2020-09-08 20:36

518 发表于 2020-9-7 20:09
43行改为

这样没从根本上解决问题,换个小说又要换,而且那部分内容还少了

啊不要这样 2020-09-08 20:36

vagrantear 发表于 2020-9-7 20:13
这样没从根本上解决问题,换个小说又要换,而且那部分内容还少了

好吧  那就改为

  1. for href in href_s[min(12,len(href_s)//2):]:

518 2020-09-08 20:36

期待大佬出现。我赶紧mark一下。

goop 2020-09-08 20:36

理解不来

老坛酸菜 2020-09-08 20:36

你得学一点html

Alanku 2020-09-08 20:36

dl中把两个dt中间内容删掉就行了

pikiti 2020-09-08 20:36

拉倒

pikiti 2020-09-08 20:36

要不要试试参考一下阅读(安卓APP github或者酷安可下载)的书源?
我记得阅读的书源是有章节获取规则的
阅读:https://github.com/gedoor/legado
源仓库:http://yck.mumuceo.com/

wqz 2020-09-08 20:36

  1. href_s = sel.css(‘dd > a::attr(href)’)

改为

  1. href_s = sel.xpath(‘//dt[2]/following-sibling::*’).css(‘dd > a::attr(href)’)

试试看

laogui 2020-09-08 20:36

laogui 发表于 2020-9-7 21:24

改为

成了,多谢老哥,xpath和CSS 还可以一起用。

cgi 2020-09-08 20:36

518 发表于 2020-9-7 20:09
43行改为

这个切片的意思就是前面12行不要是吧

cgi 2020-09-08 20:36

马克一下,等大佬出现

绿豆 2020-09-08 20:36

cgi 发表于 2020-9-8 08:54
这个切片的意思就是前面12行不要是吧

是,但是有些书章节少,要取长度//2和12最小值

  1. for href in href_s[min(12,len(href_s)//2):]:

518 2020-09-08 20:36

518 发表于 2020-9-8 09:11
是,但是有些书章节少,要取长度//2和12最小值

哦哦。明白了,谢谢

发表评论