文章目录
1.请求服务器
1.1分析网页
请求服务器之前要先看一下这个网页的构造,我们可以看到它的信息全部都是通过html加载出来的,一个url 对应一个章节,所以我们只需要提取到该小说目录的所有链接就可以获取到每个章节的内容了。
2获取第一章内容
2.1获取html文件
代码:
# 导入包
import requests
url = "http://www.shuquge.com/txt/5809/14765892.html"
reponse = requests.get(url)
print (reponse.text)
结果:
我们可以看到获取的内容中文字全部是乱码的,需要自己进行解码。
2.2解码
万能的解码方式,可以对付大多数的乱码问题。
代码:
#解码
reponse.encoding = reponse.apparent_encoding
print (reponse.text)
结果:
已经对乱码的地方进行了解码。
2.3提取并保存信息
xpath提取信息。
代码:
# 提取信息
from lxml import etree
#解析
etree_html = etree.HTML(reponse.text)
#提取标题
title = etree_html.xpath('//*[@id="wrapper"]/div[4]/div[2]/h1/text()')
print (title)
#提取内容
content = etree_html.xpath('//*[@id="content"]//text()') #现在还是数组形式,文本,字符串
text =