Tip
- 这是一个非常简单的小说网站,读者可以拿来练习爬虫,练习xpath,文章内不让带网址,私信我获取网址。代码里有详细注释。
代码
import requests as r
from lxml import etree
import re
## 根网址
base_url = "xxx"
## 小说id,即小说目录地址后的那一串数字
content_id = "xxx"
## 下载路径及文件名
myFile= "./小说名.txt"
## 获取html
items = r.get(base_url + "/" + content_id).text
html服务器托管网_body = etree.HTML(items).xpath("/html/body")
## 获取小说目录
## 这里采用了xpath的方式获取到类为listmain的div,并获取到其内部的dl,然后获取第二个dt之后的所有dd标签,获取每个dd标签下的a标签的href即为小说每一章的地址。
href = html_main.xpath("//div[@class='listmain']/dl/dt[2]/following-sibling::dd//a/@href")
## 打开文件并追加写入每一章的标题和内容,记得在最后处理一下nt和一些其它编码符。(可以适当添加延迟或者参考笔者之前的代理ip博客使用代理ip,否则可能会出现访问超时)
with open(myFile,"a", encoding="utf-8") as f:
for item in href:
res_content = ""
# 拼接url
url = base_url+item
response = r.get(url).text
res_html = etree.HTML(response)
title = res_html.xpath("//d服务器托管网iv[@class='content']/h1/text()")[0]
print("正在下载:"+title)
res_content+=title
res_content+='n'
contents = res_html.xpath("//div[@id='content']/text()")
for content in contents:
trans_content = re.sub(r'xa0', '', content)
res_content += content.replace("xa0","").replace('r','t')
res_content+='n'
f.write(res_content)
print("下载完成")
其它爬虫文章
记一次用Python爬取代理IP并使用(尝试用代理IP制造直播房间访问量)
记一次用Python统计全国女性Size
Python爬虫——爬取阳光高考专业数据并对所有专业进行数据分析
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net
相关推荐: 掌握 xUnit 单元测试中的 Mock 与 Stub 实战
引言 上一章节介绍了 TDD 的三大法则,今天我们讲一下在单元测试中模拟对象的使用。 Fake Fake – Fake 是一个通用术语,可用于描述 stub或 mock 对象。 它是 stub 还是 mock 取决于使用它的上下文。 也就是说,Fake 可以是…