从小说网站爬取小说并写入txt文档中

博主这一星期基本都在玩python爬虫,从豆瓣的图书排行到豆瓣的电影排行到链家的房屋信息到去哪儿网的旅游信息爬了个遍:,先贴一段爬取豆瓣图书前200排行的代码给小伙伴们:

#-*- coding:utf-8 -*-
import requests
from lxml import etree
import time

with open(r'D:/douban.txt','w',encoding='utf-8') as F:
    for i in range(10):
      url = 'https://book.douban.com/top250?start={}'.format(i*25)
      data = requests.get(url).text
      f = etree.HTML(data)
      books = f.xpath('//*[@id="content"]/div/div[1]/div/table')
      for div in books:
        title = div.xpath('./tr/td[2]/div[1]/a/@title')[0]
        score = div.xpath('./tr/td[2]/div[2]/span[2]/text()')[0]
        comment = div.xpath('./tr/td[2]/p[2]/span/text()')
        num = div.xpath('./tr/td[2]/div[2]/span[3]/text()')[0].strip('(').strip().strip(')')
        href = div.xpath('./tr/td[2]/div[1]/a/@href')[0]
        time.sleep(1) #加个睡眠,防止IP被封

        if len(comment)>0:
            print('{}-->{}-->{}-->{}-->{}'.format(title,score,comment[0],num,href))
            F.write("{}-->{}-->{}-->{}-->{}\n".format(title,score,comment,num,href))
        else:
            print('{}-->{}-->{}-->{}'.format(title,score,num,href))
            F.write("{}-->{}-->{}-->{}\n".format(title,score,num,href))
            F.flu
1 HTM(HTML)转TXT 所需软件:HTML2TXT.exe 说明:启动软件,单击“添加文件”按钮找到需要转换的HTML文件;选择一个输出文件夹,然后单击“开始”按钮即可得到反编译后的HTM文件。 2 CHM转TXT 所需软件:CHM Encoder 说明:启动软件,单击“打开”按钮,找到需要转换的CHM文件;选择一个输出文件夹,然后单击“开始”按钮,即可得到反编译后的HTM文件。接下来执行上面讲过的HTM(HTML)转TXT的步骤,即可得到TXT文件。 3 PDF转TXT 所需软件:PDF Text Converter 说明:启动软件后,先在左上方的浏览器窗口内找到PDF文件所在的文件夹,此时左下方的文件列表窗口会显示出该文件夹的PDF文件,选欲转换的文件,单击工具栏上的“添加文件”按钮,即会在右上方的窗口列出等待转换的文件,添加完成后,单击齿轮形状的“转换”按钮,即可完成转换,转换好的TXT文件保存在源文件所在文件夹内。 4 JAR转TXT 所需软件:WinRAR 说明:只要你的电脑上安装了WinRAR,即可右击JAR文件,直接将其解压缩。此时你需要做的,就是将这些没有扩展名的文件加上TXT的扩展名并合并(快捷的方法下面会有介绍)。 5 UMD转TXT 所需软件:XBookMaker 说明:启动软件后,单击左上方的“Open folder”按钮,定位到包含UMD电子书的文件夹,此时会在左边的的“Files”窗口列出该文件夹内包含的所有UMD格式的电子书,点击一个UMD文件,左下方的“Chapters”窗口即会显示该电子书所包含的章节。单击任意一个章节,即可在右边的窗口看到该章节的内容。现在你只需将其复制并将其粘贴到记事本,保存为TXT即可, 6 EXE转TXT 所需软件:miniKillEBook 说明:先打开想要转换的EXE电子书,再启动miniKillEBook,勾选“以文本方式保存”复选框,拖动图的图标到电子书窗口,单击“开始”按钮,软件即会自动将电子书“逐页翻过”并将每一页的内容存为TXT文本。 刚看到的软件,我比较喜欢用手机看书,这个很方便
好的,我可以帮你实现这个功能。我们可以使用Python的requests和BeautifulSoup库来爬取网页数据,并使用Python自带的io库将数据写入txt文档。下面是实现的代码: ```python import requests from bs4 import BeautifulSoup import io # 设置请求头,模拟浏览器发送请求 headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'} # 构建URL列表 urls = ['https://www.shui5.cn/article/BeiJingShiCaiShuiFaGui/index.html'] for i in range(2, 11): url = 'https://www.shui5.cn/article/BeiJingShiCaiShuiFaGui/index_' + str(i) + '.html' urls.append(url) # 创建一个空字符串,用于存储爬取到的数据 result = '' # 遍历URL列表,爬取每一页的数据 for url in urls: response = requests.get(url, headers=headers) soup = BeautifulSoup(response.text, 'html.parser') articles = soup.find_all('div', class_='list_box') for article in articles: title = article.find('h2').text.strip() date = article.find('span', class_='date').text.strip() content = article.find('p').text.strip() result += 'Title: {}\nDate: {}\nContent: {}\n\n'.format(title, date, content) # 将爬取到的数据写入txt文档 with io.open('shui5.txt', 'w', encoding='utf-8') as f: f.write(result) ``` 这段代码首先定义了请求头,然后构建了一个URL列表,用于遍历每一页的数据。接着遍历URL列表,对每一页的数据进行解析,并将解析结果存储在一个字符串。最后使用io库将字符串写入txt文档。注意,在打开文档时需要指定编码格式为utf-8,因为税屋网站使用的是文编码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值