君子好逑 发表于 2020-8-24 15:39:51

爬虫

import requests
from bs4 import BeautifulSoup
import re


url = 'https://www.biduo.cc/biquge/41_41864/c15143933.html'

headers = {
'Accept-Language': 'zh-CN',
'Cache-Control': 'no-cache',
'Connection': 'Keep-Alive',
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.102 Safari/537.36 Edge/18.18363'
}

html = requests.get(url=url,headers=headers).text

soup = BeautifulSoup(html,'lxml')
title = soup.select('.bookname > h1')
title = title.text
text = soup.find('div',id='content').text.replace('    ','\n')

with open('无敌1.txt','w',encoding='utf-8') as f:
    while (len(text)>50):
      str1 = text
      if ('\n') in str1:
            index = str1.find('\n')
            str1 = str1
            text = text
            f.write(str1)

      else:
            if (text) is '\n':
                f.write(str1)
                text = text
            
            else:
                f.write(str1)
                f.write('\n')
                text = text
    else:
      f.write(text)

print('完成爬取')
有没有大佬有爬完文本后向文件里写的时候控制每行字符长度的程序。我自己写了一个,感觉不是很理想。求大佬指点{:10_256:}

xiaosi4081 发表于 2020-8-24 15:40:28

你想要的效果?

君子好逑 发表于 2020-8-24 15:42:55

就是跟Word差不多的那种,每行的长度都一致

君子好逑 发表于 2020-8-24 15:47:11

本帖最后由 君子好逑 于 2020-8-24 15:49 编辑

xiaosi4081 发表于 2020-8-24 15:40
你想要的效果?

这是我的程序的效果


吧文档放到Word里她是这样的,我想编个程序可以让写入文件里的字符跟Word一样整齐

xiaosi4081 发表于 2020-8-24 15:51:10

君子好逑 发表于 2020-8-24 15:47
这是我的程序的效果




word好像有自动换行,所以没办法

君子好逑 发表于 2020-8-24 15:52:09

xiaosi4081 发表于 2020-8-24 15:51
word好像有自动换行,所以没办法

{:10_266:}

君子好逑 发表于 2020-8-24 15:52:42

xiaosi4081 发表于 2020-8-24 15:51
word好像有自动换行,所以没办法

有点难受,爬来的小说格式是真的让人看得难受
页: [1]
查看完整版本: 爬虫