吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 4884|回复: 27
收起左侧

[Python 转载] 【python】新手写的一个小说爬虫【天籁小说】

  [复制链接]
tuhaojun 发表于 2020-9-18 21:29
本帖最后由 tuhaojun 于 2020-9-18 21:32 编辑

新手,学了两三天python,爬了个比较容易爬的小说网,笔趣阁有点坑。爬着爬着就505 不知道什么机制。
看了看别人学了两三天python跟我这个比起来 简直了
请求大佬指点。

[Python] 纯文本查看 复制代码
import requests
from bs4 import BeautifulSoup
import lxml
import re

#爬取天籁小说网小说
#url = 'https://www.23txt.com/files/article/html/60/60792/'
url = input('网址URL:\n本脚本仅支持天籁小说 \n类型:https://www.23txt.com/files/article/html/**/*****/ \n')
url_fix = input('类型:**/******/ \n')
req = requests.get (url)
req.encoding = 'GBK'
text = req.text
bf = BeautifulSoup (text,'lxml')
title = bf.find_all('div',id = 'info')
title = bf.find_all('h1')
title = title[0].text.replace ('h1',' ')
text_info = re.findall(r'<div id="list">.*?</div>',text,re.S)[0]
text_info_list = re.findall (r'<dd><a href="/files/article/html/%s(.*?)"  >(.*?)</a>'% url_fix ,text_info)
for book in text_info_list:
    text_url = book[0]
    text_name = book[1]
    text_download = url + text_url
    reqs = requests.get(text_download)
    reqs.encoding = 'GBK'
    texts = reqs.text
    texts_info = re.findall(r'<div id="content">(.*?)</div>',texts,re.S)[0]
    texts_info = texts_info.replace (' ',' ')
    texts_info = texts_info.replace (';',' \n')
    texts_info = texts_info.replace ('<br>',' ')
    with open ('%s.txt'% title,'a+',encoding = 'GBK')as f:
        f.write ('\n\n')
        f.write (text_name)
        f.write (texts_info)
        f.write ('\n')
    print (text_name)
print ('下载完成')


11.png
12.png


免费评分

参与人数 5吾爱币 +5 热心值 +5 收起 理由
sbfgg + 1 + 1 我很赞同!
涛行 + 1 + 1 我很赞同!
PENEY + 1 + 1 我很赞同!
小孩昂 + 1 + 1 谢谢@Thanks!
孤世 + 1 + 1 用心讨论,共获提升!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

sbfgg 发表于 2021-5-27 20:03
网址URL:
本脚本仅支持天籁小说
类型:https://www.23txt.com/files/article/html/**/*****/
https://www.23txt.com/files/article/html/60/60792/
类型:**/******/
60/60792/
Traceback (most recent call last):
  File "D:/BaiduNetdiskDownload/pylearn/pctianlai/test.py", line 26, in <module>
    texts_info = re.findall(r'<div id="content">(.*?)</div>', texts, re.S)[0]
IndexError: list index out of range
 楼主| tuhaojun 发表于 2020-9-22 20:56
阿龙心也好累呀 发表于 2020-9-22 20:30
笔趣阁应该是你爬取太快给检测到了   import time   每次循环停一下就好(我猜

是的  今天又试了  就笔趣阁有这毛病 加循环暂停更慢了,本来爬的就慢  
不知道多线程+循环暂停这个方案行不行
yjn866y 发表于 2020-9-18 21:46
EnD丶 发表于 2020-9-18 21:47
大佬 这个怎么用嗷 能不能用在ygbook
nisay 发表于 2020-9-18 21:48
不错,加油
q2726699 发表于 2020-9-18 22:18
厉害厉害
 楼主| tuhaojun 发表于 2020-9-18 22:19
EnD丶 发表于 2020-9-18 21:47
大佬 这个怎么用嗷 能不能用在ygbook

不清楚 没了解过这个东西
 楼主| tuhaojun 发表于 2020-9-18 22:33
EnD丶 发表于 2020-9-18 21:47
大佬 这个怎么用嗷 能不能用在ygbook

直接复制代码去跑就行了 在网站找到想要的小说 复制书本首页URL直接跑码就行了
twmr 发表于 2020-9-18 22:35
学习,感谢分享
simdabo 发表于 2020-9-18 22:58
正在学习中……
老头哟 发表于 2020-9-19 16:30
大佬python安装教程有木有哦,一阵头大,谢谢
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 07:12

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表