python----获取一部小说

1、需求说明

        获取一部小说的标题+内容,以txt文档形式保存

2、项目说明

3、代码


# 怎么发送请求
# pip install requests
import requests
# pip install lxml->从标签里提起文字
#from lxml import etree
from lxml import html
etree=html.etree
# 发送给谁
url='https://www.z1xs.com/book/13972/9382549.html'
i=0;
while url != 'https://www.z1xs.com/book/13972/':
   i=i+1
   print(i)
   #伪装自己
   headers={
      'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.107 Safari/537.36'
   }
   # 发送请求
   resp=requests.get(url,headers=headers)
   #查看编码格式
   #print("encoding="+resp.encoding)
   #设置编号  设置后没生效
   #resp.encoding = "UTF-8"
   # 响应信息
   #print(resp.text)
   # 转化为文本
   e=html.etree.HTML(resp.text)
   #转化为二进制
   #contents=html.etree.HTML(resp.content)
   # 使用XPATH及属性名称定位元素  元素属性类型:@id 、@name、@type、@class、@tittle
   #标题  设置编码格式-encode('ISO-8859-1').decode('gbk')
   #第一章节
   title=e.xpath('//h1/text()')[0].encode('ISO-8859-1').decode('gbk')
   #print('title==='+title)
   #内容 string(//div[@id="content"]->转换string 类型
   infos=e.xpath('string(//div[@id="content"])').encode('ISO-8859-1').decode('gbk')
   #print('infos==='+infos)
   #下一章节
   url='https://www.z1xs.com'+e.xpath("string(//div[@class='bottem1']/a[4]/@href)")
   #print(url)
   # 保存
   with open('盛妆山河.txt','w',encoding='gbk') as f:
      f.write(title+'\n\n'+infos+'\n\n')





 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值