꧁༺溟ི༒娘ོ༻꧂ 2022-04-17 19:49 采纳率: 100%
浏览 309
已结题

python爬小说,正文怎么都换不了行,怎么办?

python爬小说,爬出来的正文怎么都不能换行,都是凑一起的,而且最后还提示IndexError: list index out of range。有大佬可以帮忙看看吗?

import requests
from bs4 import BeautifulSoup
import os
path = r'D:\pythonProject2\ '
passage = 0
url = "https://m.dijiubook.net/70_70151/25290272.html"
endurl = "https://m.dijiubook.net/70_70151/25290272.html"
head = {}
headers = {'user-agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.87 Safari/537.36 SE 2.X MetaSr 1.0'}
while True:
    r = requests.get(url, headers=head)
    r.encoding = r.apparent_encoding
    soup = BeautifulSoup(r.text, "html.parser")
    #标题
    title = soup.select("#nr_title")[0].get_text()
    #正文
    text = soup.select("#neirong")[0].get_text()
    with open(path + "《传说之异世双尊》by 冰糖莲子羹.txt", 'a', encoding='utf-8') as f:
        f.write("\r\n")
        for i in title:
            f.write(i)
        f.write('\r\n')
        for x in text:
            f.write(x)
        f.write('\r\n')

    passage+=0
    #if(url==endurl):
        #break
    nexturl = "https://m.dijiubook.net" + soup.select("#pb_next")[0]['href']
    url = nexturl
    print(title+text)
os.system("pause")

img

Traceback (most recent call last):
  File "D:\pythonProject2\小时.py", line 30, in <module>
    nexturl = "https://m.dijiubook.net" + soup.select("#pb_next")[0]['href']
IndexError: list index out of range

  • 写回答

1条回答 默认 最新

  • 陈年椰子 2022-04-18 09:11
    关注

    1、 你的 循环 没有退出的语句, 没有页数,就出错了。

    2、正文不换行的问题
    改一下代码

    for x in text:
        f.write(x)
        f.write('\r\n')
    
    # 改成
    for x in text:
        f.write("{}\n".format(x))
    
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 4月26日
  • 已采纳回答 4月18日
  • 创建了问题 4月17日

悬赏问题

  • ¥15 机器人轨迹规划相关问题
  • ¥15 word样式右侧翻页键消失
  • ¥15 springboot+vue 集成keycloak sso到阿里云
  • ¥15 win7系统进入桌面过一秒后突然黑屏
  • ¥30 backtrader对于期货交易的现金和资产计算的问题
  • ¥15 求C# .net4.8小报表工具
  • ¥15 安装虚拟机时出现问题
  • ¥15 Selenium+docker Chrome不能运行
  • ¥15 mac电脑,安装charles后无法正常抓包
  • ¥18 visio打开文件一直显示文件未找到