gpt4 book ai didi

python - 如何使用 beautifulsoup 将网站中的文本保存为 .txt 文件?

转载 作者:行者123 更新时间:2023-12-04 16:21:56 27 4
gpt4 key购买 nike

我是 python 和网络抓取的新手。我遇到了一个问题,我似乎无法弄清楚如何解决它。

我正在尝试从网站复制文本,当我将所有内容打印到终端时,它弹出没问题。

问题是当我尝试将其保存到文本文件时。我收到此错误:

     Traceback (most recent call last):
File "t3.py", line 43, in <module>
Case_info.write(item.text+"\n")
UnicodeEncodeError: 'ascii' codec can't encode characters in position 16-17: ordinal not in range(128)

我不知道如何解决它。我这个特定部分的代码如下:
import mechanize
import requests
from bs4 import BeautifulSoup
import re
.
.
.

def main():
b=mechanize.Browser()
return b.open(mainlink+case)

html_text=main().read()

soup = BeautifulSoup(html_text)

g_data=soup.findAll("div",{"class":"Print"})

Case_info=open("case_info.txt", "w+")

for item in g_data:
print item.text
Case_info.write(item.text+"\n")

Case_info.close()

另外,让我有些困惑的是这部分代码完美地完成了几乎完全相同的事情。
.
.
links = soup.findAll('a',href=True)
.
.
for link in links:
if re.findall('keyword',link['href']):
#print link.text, link['href']
files.write(link['href']+"\n")
names.write(link.text+"\n")
.
.

希望有人可以帮助解决问题。

最佳答案

使用 unidecode包,可以消除错误。

from unidecode import unidecode
for item in g_data:
print item.text
Case_info.write(unidecode (item.text+"\n"))

关于python - 如何使用 beautifulsoup 将网站中的文本保存为 .txt 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25133626/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com