[英]Can't scrape breweries' names from a website using the requests module
我创建了一个脚本来使用请求模块从该网站收集啤酒厂的名称,但是当我执行该脚本时,它最终什么也得不到。 我在页面源代码中以及通常通过开发工具找到的任何未记录的 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)
你可以试试:
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))
印刷:
ID | 名称 | 家长 | 电话 | 网站 | Brewery_Type__c | Is_Craft_Brewery__c | Voting_Member__c | Membership_Record_Item__c | Membership_Record_Paid_Through_Date__c | Membership_Record_Status__c | Account_Badges__c | 城市 | 国家 | 国家代码 | 地理编码准确性 | 纬度 | 经度 | 邮政编码 | state | 州代码 | 街道 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0014x000012jyoHAAQ | 规划中的啤酒厂 - 蒙特雷 | (811) 244-8078 | 规划中的啤酒厂 | 错误的 | 错误的 | 蒙特雷 | 墨西哥 | MX | 堵塞 | 25.6444 | -100.275 | 64850 | 图坎 362 | ||||||||
0014x000012jyoJAAQ | Sekinoichi-shuzo Co.,Ltd/Iwai Brewery | +81-191-21-1144 | www.sekinoichi.co.jp | 酒馆 | 错误的 | 错误的 | 一关市 | 日本 | J.P | 地址 | 38.9314 | 141.132 | 021-0885 | 5-42 田村町 | |||||||
0014x000012jyoKAAQ | 塞尔比(米德尔伯勒)啤酒厂有限公司 | 01757 702826 | 错误的 | 错误的 | 塞尔比 | 英国 | 国标 | 堵塞 | 53.7871 | -1.07141 | YO8 3LL | 131米尔盖特 | |||||||||
0014x000012jyoLAAQ | 森德罗酿酒公司 | www.senderobrewing.com | 规划中的啤酒厂 | 错误的 | 错误的 | 啤酒厂会员资格 | 2019-10-31 | 已到期 | 圣佩德罗苏拉 | 洪都拉斯 | 氢氮 | 城市 | 15.5039 | -88.0157 | 21102 | 洛斯阿尔卑斯,麦凯大道 | |||||
0014x000012jyoMAAQ | Ser Bhum 小型酿酒厂 | 微 | 错误的 | 错误的 | 啤酒厂会员资格 | 2017-08-31 | 已到期 | 廷布 | 不丹 | 英国电信 | 楠 | 楠 | 洪措洪措 |
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.