问题描述
我试图将一个漂亮的汤对象中的文本保存到文件中,以后我可以编辑和使用。 我已经导入了所有必要的模块,但由于某种原因,每次在“pagename.write(str(soup))”时我都会得到相同的错误。我尝试重写这种多重方式而且我只是难倒
#Testing implementation of writing to file
#save the HTML to a beautiful soup object
soup = BeautifulSoup(browser.page_source, 'html.parser')
#TODO: use breadcrumb of page name for loop later on
breadcrumb = soup.select('.breadcrumb span')
pagename = breadcrumb[0].get_text()
#open a file then write to it
bookPage = os.path.join('books/cpp/VST', pagename+'.txt')
open(pagename, 'wb')
pagename.write(str(soup))
#close file
#pagename.close()
#TODO: move on to next file
1楼
pagename
是一个字符串 - 从HTML中提取的文件名。
你的意思是使用bookPage
路径和 。
另外,要避免TypeError:需要类似字节的对象,而不是'str'错误并获得字节字符串,您需要调用encode()
:
with open(bookPage, 'wb') as f:
f.write(soup.encode("utf-8"))