忘了在哪抄的源码了,不过确实很好用,要是爬下来有夹字符串什么的,自行修改re匹配哈
这个小爬虫用三个模块,requests,parsel,还有re模块**
按照惯例,先导入模块:
import requests
import parsel
import re
然后就是伪装浏览器标识,网址之类的咯,这里我偷懒,直接定位到网站上这本小说的网址
url = “http://www.xpaoshuba.com/Partlist/61563/”
我个人比较爱看科幻类的小说,这里就随便拿本科幻小说举例
定义好了网址之后,接下来就是开始分析网址了:
response = requests.get(url)
responses = response.text
#print(responses)
写的时候分析网页内容用的
selector = parsel.Selector(responses)
novel_name = selector.css(‘#info h1::text’).get() #小说名
print(novel_name)
这里是分析网页的标签,小说的名字在h1标签内,所以直接定义标签,拿到小说的名字,我这习惯很差,顺手补一个小说名在运行框里的显示,方便自己看进度;
接下来就是去找小说章节名和单章节链接的标签了:
href = selector.css(‘#list dd a::attr(href)’).getall() #小说章节
这里可以看到,章节名和链接都可以直接用dd标签来找,我就偷一下懒哈,只抓取链接,因为章节名在后面的单张小说里面是有的;
抓取到的链接,我是喜欢用循环的方式来给它存起来,然后一个循环完成了一本书也抓取完了:
for link in href:
上面抓取到了章节链接,但是链接需要拼接才能用,这里咱们省点事,自己手动拼接吧:
link_url = ‘http://www.xpaoshuba.com’ + link
这里链接拼接好了,接下来还是老样子,请求一下链接,然后分析返回的内容:
response_1 = requests.get(link_url)
responses_