[英]Store Scraped data to a text file in Python
我能够使用 Beautifulsoup 抓取数据,现在希望生成一个文件,其中包含我使用 Beautiful Soup 抓取的所有数据。
file = open("copy.txt", "w")
data = soup.get_text()
data
file.write(soup.get_text())
file.close()
我没有看到文本文件中的所有标签和全部内容。 关于如何实现它的任何想法?
您可以使用:
with open("copy.txt", "w") as file:
file.write(str(soup))
如果您有一个将被抓取的 URL 列表,然后您想将抓取的每个 URL 存储在不同的文件中,您可以尝试:
my_urls = [url_1, url_2, ..., url_n]
for index, url in enumerate(my_urls):
# .............
# some code to scrape
with open(f"scraped_{index}.txt", "w") as file:
file.write(str(soup))
快速解决方案:
您只需将汤转换为字符串即可。 使用测试站点,以防其他人希望遵循:
from bs4 import BeautifulSoup as BS
import requests
r = requests.get("https://webscraper.io/test-sites/e-commerce/allinone")
soup = BS(r.content)
file = open("copy.txt", "w")
file.write(str(soup))
file.close()
稍微好一点的解决方案:
更好的做法是为文件 IO 使用上下文( with
使用):
from bs4 import BeautifulSoup as BS
import requests
r = requests.get("https://webscraper.io/test-sites/e-commerce/allinone")
soup = BS(r.content)
with open("copy.txt", "w") as file:
file.write(str(soup))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.