gpt4 book ai didi

python - 忽略 Unicode 错误

转载 作者:太空宇宙 更新时间:2023-11-03 13:51:34 25 4
gpt4 key购买 nike

当我在一堆 URL 上运行循环以查找这些页面上的所有链接(在某些 Div 中)时,我返回此错误:

Traceback (most recent call last):
File "file_location", line 38, in <module>
out.writerow(tag['href'])
UnicodeEncodeError: 'ascii' codec can't encode character u'\u2026' in position 0: ordinal not in range(128)

我写的与这个错误相关的代码是:

out  = csv.writer(open("file_location", "ab"), delimiter=";")
for tag in soup_3.findAll('a', href=True):
out.writerow(tag['href'])

有没有办法解决这个问题,可能是使用 if 语句忽略任何有 Unicode 错误的 URL?

预先感谢您的帮助。

最佳答案

您可以将 writerow 方法调用包装在 try 中并捕获异常以忽略它:

for tag in soup_3.findAll('a', href=True):
try:
out.writerow(tag['href'])
except UnicodeEncodeError:
pass

但您几乎肯定想为您的 CSV 文件选择 ASCII 以外的编码(utf-8,除非您有充分的理由使用其他编码),然后使用 codecs.open() 而不是内置的 open

关于python - 忽略 Unicode 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7588575/

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