【发布时间】:2020-06-30 21:48:49
【问题描述】:
我是 python 新手,目前正试图找到一种方法来扫描我的 CSV 文件中的所有 URL,以查找网站是否显示了特定的字符串(在我的情况下,我需要检查多个字符串:'不可用”、“即将推出”和“暂时关闭”)。
CSV 文件结构:
id website
1 https://www.rainfordsolutions.com/new-online-shop-coming-soon
2 https://www.arrey-fashion.com/a-nice-entry/
3 https://google.com
...
我认为我首先需要对我的网站 URL 进行某种循环,然后为每个网站创建另一个循环以查看我要查找的关键字是否存在,最后将结果写入我的 CSV 文件,其中:如果没有找到关键字(网站有效),则为 TRUE,如果找到我的任何关键字(网站无效),则为 FALSE。我不确定如何解决这个问题。我从 pandas 和 urllib.request 开始,但我知道还有漂亮的汤和请求库。有人可以帮我解决这个问题吗?提前致谢!
import pandas as pd
import urllib.request
df = pd.read_csv('path/to/my/file/with/urls.csv')
for v in df['website']:
with urllib.request.urlopen(v) as url:
df['active'] =
df.to_csv('path/to/my/output/urls_and_flag.csv', index=False)
所需的输出 urls_and_flag.csv:
id website active
1 https://www.rainfordsolutions.com/new-online-shop-coming-soon FALSE
2 https://www.arrey-fashion.com/a-nice-entry/ FALSE
3 https://google.com TRUE
...
【问题讨论】:
标签: python pandas csv web-scraping beautifulsoup