python-3.x 无法使用requests模块从网站上获取啤酒厂的名称

e3bfsja2  于 2023-01-06  发布在  Python
关注(0)|答案(1)|浏览(117)

我创建了一个脚本,使用requests模块从website中收集啤酒厂的名称,但是当我执行这个脚本时,它什么也得不到。我在页面源代码中查找了标题,也在任何未记录的API中查找了标题,这些API通常可以通过开发工具找到,但是没有找到。

import requests
from bs4 import BeautifulSoup

link = "https://www.brewersassociation.org/directories/breweries/"

headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.0.0 Safari/537.36',
}

res = requests.get(link,headers=headers)
soup = BeautifulSoup(res.text,"html.parser")
for item in soup.select(".company-content > h3[itemprop='name']"):
    print(item.text)
57hvy0tb

57hvy0tb1#

您可以尝试:

import requests
import pandas as pd

url = 'https://www.brewersassociation.org/wp-content/themes/ba2019/json-store/breweries/breweries.json'

data = requests.get(url).json()

df = pd.DataFrame(data)
df = pd.concat([df, df.pop('BillingAddress').apply(pd.Series, dtype=object)], axis=1)
df.pop('attributes')

# print sample data, total length should be 26802 breweries:
print(df.head().to_markdown(index=False))

图纸:
| 身份证|姓名|母体|电话|网站|啤酒厂_类型__c|是_工艺_啤酒厂__c|表决_成员__c|会员_记录_项目__c|会员资格记录支付截止日期c|成员资格_记录_状态__c|帐户_徽章__c|城市|乡村|国家代码|地理编码精度|纬度|经度|邮政编码|状态|状态代码|街道|
| - ------|- ------|- ------|- ------|- ------|- ------|- ------|- ------|- ------|- ------|- ------|- ------|- ------|- ------|- ------|- ------|- ------|- ------|- ------|- ------|- ------|- ------|
| 0014 x 000012 jyoHAAQ公司|规划中的啤酒厂- Monterey ||电话:(811)244-8078||规划中的啤酒厂|假|假||||| Monterey |墨西哥|墨西哥|块|二十五点六四四四| -100.275 |小行星64850|||吐灿362|
| 0014 x 000012 jyoJAAQ公司|关之一造株式会社/岩井酿酒厂||+81-191-21-1144| www.sekinoichi.co.jp|啤酒酒吧|假|假|||||一关市|日本|日本|地址|三十八点九三一四| 小行星141|021-0885| ||田村町5-42|
| 0014 x 000012焦卡拉克|塞尔比(米德尔伯勒)啤酒有限公司||小行星01757|||假|假|||||塞尔比| 联合 Realm |英国|块|五十三| -1.07141 |YO8 3LL|||小行星131|
| 0014 x 000012 jyoLAAQ公司|森迪罗酿造公司|||www.senderobrewing.com|规划中的啤酒厂|假|假|啤酒厂会员|2019年10月31日|过期||圣佩德罗苏拉|洪都拉斯|HN|城市|十五| -88.0157 |小行星211|||洛斯阿尔卑斯,麦凯大道|
| 0014 x 000012 jyoMAAQ公司|Ser Bhum微型啤酒厂||||微型|假|假|啤酒厂会员|2017年8月31日|过期||廷布|不丹|英国电信||楠|楠||||弘昭弘昭|

相关问题