爬虫分享(四):多线程爬取小说
解析网页获取每章小说地址
这次要爬取一本名为《元尊》的小说
url = ‘http://www.ishisetianxia.com/chaojishenxiang/’
进入网页打开开发者工具
可以发现每章地址在a标签的href里,但是这个地址只有一部分,我们还需要人为把前部分添加上,代码如下:
import requests
from lxml import etree
url = 'http://www.ishisetianxia.com/chaojishenxiang/'
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Safari/537.36',
'Connection': 'close'}
r = requests.get(url,headers=headers)
r.encoding = r.apparent_coding
html = etree.HTML(r.text)
urls = html.xpath('/html/body/div[3]/div[3]/dl/dd/a/@href')
for url in urls:
n_url = 'http://www.ishisetianxia.com/' + url
这样,我们就获取到了每章小说的地址
保存每章小说本地
随便打开一章,打开开发者工具,就可以轻松定位标题和文本。
再加入多线程,我们便能够以较快速度爬取小说,完整代码如下:
# -*- ecoding: utf-8 -*-