赞
踩
python爬虫实战——爬取淘宝商品信息并导入EXCEL表格(超详细)
python多线程爬取壁纸 妈妈再也不担心我没壁纸了!.
python爬虫爬取虎牙数据(简单利用requests库以及Beautifulsoup).
python爬虫之爬取壁纸(新手入门级).
python爬虫实战——爬取猫眼电影TOP100并导入excel表
利用python写一个简单的笔趣阁爬虫,根据输入的小说网址爬取整个小说并保存到txt文件。爬虫用到了BeautifulSoup库的select方法
结果如图所示:
本文只用于学习爬虫
这里以斗罗大陆小说为例 网址:
http://www.biquge001.com/Book/2/2486/
可以发现每章的网页地址和章节名都放在了 <"div id=list dl dd a>中的a标签中,所以利用BeautfulSoup中的select方法可以得到网址和章节名
Tag = BeautifulSoup(getHtmlText(url), "html.parser") #这里的getHtmlText是自己写的获取html的方法
urls = Tag.select("div #list dl dd a")
然后遍历列表
for url in urls:
href = "http://www.biquge001.com/" + url['href'] # 字符串的拼接 拼接成正确的网址
pageName = url.text # 每章的章名
然后每章小说的内容都存放在<div id=“content” 里 同理得
substance = Tag.select("div #content") # 文章的内容
最后同理在首页获取小说的名称
<"div id = info h1>
bookName = Tag.select("div #info h1")
def getHtmlText(url):
r = requests.get(url, headers=headers)
r.encoding = r.apparent_encoding # 编码转换
r.raise_for_status()
return r.text
def writeIntoTxt(filename, content):
with open(filename, "w", encoding="utf-8") as f:
f.write(content)
f.close()
print(filename + "已完成")
代码如下(示例):
url = "http://www.biquge001.com/Book/2/2486/" substanceStr = "" bookName1 = "" html = getHtmlText(url) # 判断是否存在这个文件 Tag = BeautifulSoup(getHtmlText(url), "html.parser") urls = Tag.select("div #list dl dd a") bookName = Tag.select("div #info h1") for i in bookName: bookName1 = i.text if not os.path.exists(bookName1): os.mkdir(bookName1) print(bookName1 + "创建完成") else: print("文件已创建") for url in urls: href = "http://www.biquge001.com/" + url['href'] # 字符串的拼接 拼接成正确的网址 pageName = url.text # 每章的章名 path = bookName1 + "\\" # 路径 fileName = path + url.text + ".txt" # 文件名 = 路径 + 章节名 + ".txt" Tag = BeautifulSoup(getHtmlText(href), "html.parser") # 解析每张的网页 substance = Tag.select("div #content") # 文章的内容 for i in substance: substanceStr = i.text writeIntoTxt(fileName, substanceStr) time.sleep(1)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。