【发布时间】:2020-07-01 07:16:19
【问题描述】:
当我使用单个 URL 来抓取 URL 变量时,一切都按预期工作,但在尝试从 csv 读取链接时没有得到任何结果。任何帮助表示赞赏。
关于 CSV 的信息:
- 一列的标题名为“链接”
- 300 行没有空格的链接,逗号,;或链接之前/之后的其他章程
- 每行一个链接
import requests # required to make request
from bs4 import BeautifulSoup # required to parse html
import pandas as pd
import csv
with open("urls.csv") as infile:
reader = csv.DictReader(infile)
for link in reader:
res = requests.get(link['Links'])
#print(res.url)
url = res
page = requests.get(url)
soup = BeautifulSoup(page.text, 'html.parser')
email_elm0 = soup.find_all(class_= "app-support-list__item")[0].text.strip()
email_elm1 = soup.find_all(class_= "app-support-list__item")[1].text.strip()
email_elm2 = soup.find_all(class_= "app-support-list__item")[2].text.strip()
email_elm3 = soup.find_all(class_= "app-support-list__item")[3].text.strip()
final_email_elm = (email_elm0,email_elm1,email_elm2,email_elm3)
print(final_email_elm)
df = pd.DataFrame(final_email_elm)
#getting an output in csv format for the dataframe we created
#df.to_csv('draft_part2_scrape.csv')
【问题讨论】:
-
既然您已经导入了 pandas,请尝试使用
df = pd.read_csv()读取 csv。这将允许您轻松获得带有df['Links']的链接列表。只是迭代。这对你有用吗? -
@Phineas 谢谢。我可以阅读带有
df = pd.read_csv()的链接,但无法从中创建汤。
标签: python pandas beautifulsoup