我已经设置了 BeautifulSoup 来为两个网页找到一个特定的类。我想知道如何将每个 URL 的结果写入一个 CSV 中的唯一单元格?我可以读取的 URL 数量也有限制,因为一旦我开始工作,我想将其扩展到大约 200 个 URL。该类始终相同,我不需要任何格式,只需要每个 URL 一个单元格中的原始 HTML。感谢您的任何想法。from bs4 import BeautifulSoupimport requestsurls = ['https://www.ozbargain.com.au/','https://www.ozbargain.com.au/forum']for u in urls: response = requests.get(u) data = response.text soup = BeautifulSoup(data,'lxml') soup.find('div', class_="block")
1 回答
UYOU
TA贡献1878条经验 获得超4个赞
用于pandas
处理表格数据:pd.DataFrame
创建表格,并将pd.to_csv
表格保存为 csv(也可以查看文档,例如追加模式)。
基本上它。
import requests
import pandas as pd
from bs4 import BeautifulSoup
def func(urls):
for url in urls:
data = requests.get(url).text
soup = BeautifulSoup(data,'lxml')
yield {
"url": url, "raw_html": soup.find('div', class_="block")
}
urls = ['https://www.ozbargain.com.au/','https://www.ozbargain.com.au/forum']
data = func(urls)
table = pd.DataFrame(data)
table.to_csv("output.csv", index=False)
添加回答
举报
0/150
提交
取消