0

我正在尝试抓取多个网站并将信息导出到一个.csv或理想的.xslx文件中。到目前为止,我已经完成了使用以下代码抓取一个包含多个条目的站点:

import requests
r = requests.get("https://www.company_name/our-portfolio-companies")

from bs4 import BeautifulSoup
doc = BeautifulSoup(r.text, "html.parser")

for company_headline in doc.select(".company_headline a"):
    name = company_headline.text
    
for website in doc.select(".subinfo_website"):
    website = website.text[19:]

出来的是我的 Jupiter 笔记本中的投资组合公司及其各自网站的列表。我采取了简单的方法,只是将信息直接复制/粘贴到 Excel 中,以进一步完善它。

但是,我被困在下一步。如果我现在尝试查找我找到的约 400 家投资组合公司的地址。我首先需要找出隐藏该信息的位置。我的想法是要求 Python ping 每个相应的约 400 个站点,并添加./contact-us,等./contact./about-us并列出它以防收到 200 个回复。然后在下一步中在 HTML 中搜索“地址:”之类的单词并复制接下来的 40 个字母。

我在正确的轨道上吗?有人可以帮助我或指出正确的方向,我可以阅读更多内容以了解如何做到这一点?

4

1 回答 1

0

欢迎!这是一个奇怪的案例,我怀疑是否有明确的答案,但我会试一试。

据我所知,你走在正确的轨道上。大多数网站的 URL 都会与之匹配,但这不会 100% 起作用。您可以做的一件事是抓取页面(甚至只是页脚)以查找具有文本联系人/联系我们/等的链接,以查找联系人的 URL,而不是希望它与您的猜测 URL 匹配。

于 2020-08-14T12:32:18.480 回答