爬取小说时的一些小细节,大家可以先试试,然后在用我的另一篇文章

import requests
from bs4 import BeautifulSoup
target ='xxxxxxxxx'#第五章内容
response = requests.get(target)#其中之所以要加headers这一段是因为有些网页会识别到你是通过python请求的然后把你拒绝,所以我们要换个正常的请求头。可以随便找一个或者f12从网络信息里复制一个。
response.encoding = 'utf-8'
html = response.text
bf = BeautifulSoup(html,"lxml")
texts = bf.find("div",id = "content")#一般小说都是这个开头
print(texts)
print(texts.text)#这只是一章的内容,但是可以提取所有章节的部分网址,然后一个一个爬取
f=open("xxxxxx.txt","a",encoding='utf-8')#内容是汉字时会出现乱码,这是时要用encoding='utf-8'
f.write(texts.text)
target1 ='xxxxxxxxx'#所有章节
response1 = requests.get(target1)
response1.encoding = 'utf-8'
html1 = response1.text
bf1=BeautifulSoup(html1,"lxml")
texts1 = bf1.find("div",id = "list")#章节一般是list
texts2 = texts1.find_all("a")
names=[]
urls=[]
for i in texts2:
    print(i.string)
    print(i.get("href"))
    names.append(i.string)
    urls.append(i.get("href"))
    print(len(names))#现在得到了所有章节部分的网址,i.string提取标签中的文字,i.get(“href”)提取a标签中的href属性值,由此我们就获得了所有章节的链接地址了

相关的函数,我会在其他文章中写到。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值