问题
:
with open('{}\{}.html'.format(HTML_PATH, certainty_detail_name), 'w', encoding='UTF-8') as fp:
fp.write(soup)
print("成功写入{}.html文件。".format(certainty_detail_name))
执行这个程序出现错误
Traceback (most recent call last):
File "D:/PyDate/Climb_C_site/Get_C_Site.py", line 447, in <module>
GetArticle().get_current_link(url)
File "D:/PyDate/Climb_C_site/Get_C_Site.py", line 243, in get_current_link
fp.write(soup)
TypeError: write() argument must be str, not BeautifulSoup
原因
:
文件写入的是str数据,而不是BeautifulSoup
解决
:
只需要将BeautifulSoup转化成str格式就成。
更改后:
with open('{}\{}.html'.format(HTML_PATH, certainty_detail_name), 'w', encoding='UTF-8') as fp:
fp.write(str(soup))
print("成功写入{}.html文件。".format(certainty_detail_name))