【发布时间】:2024-04-26 19:30:01
【问题描述】:
我的任务是遍历https://www.unitedstateszipcodes.org/23022/#stats 中的所有美国邮政编码,并从图中每年的数字下方提取。
此链接是一个邮政编码区域的示例。在我将它们全部提取出来后,我需要将它们放入 Pandas 数据框中(这很容易),尝试查看其他帖子,但似乎无法解决这个问题。
查看了html中的元素,但很不清楚。
import requests
from bs4 import BeautifulSoup
import pandas as pd
url = 'https://www.unitedstateszipcodes.org/23022/#stats'
headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.100 Safari/537.36'}
soup = BeautifulSoup(requests.get(url, headers=headers).content, 'html.parser')
match = soup.findAll('tr')
print(match)
years = ['Historical ' + str(year) for year in range(2005, 2019)]
columns = ['ZIP Code', *years]
df = pd.DataFrame(columns=columns)
【问题讨论】:
-
邮政编码太多了。是否有您感兴趣的特定邮政编码列表?
-
我需要从 2005 年到 2018 年在该网站(美国)中列出的每个邮政编码 @QHarr
-
邮政编码不是从数据库中提取的,您必须付费才能访问吗?我查看了来自simplemaps.com/data/us-zips 的免费列表,数量巨大,但我看到很多在针对您所需的数据源进行尝试时没有数据。我正在尝试寻找一种公平的方式来获取数据,而不会让服务器淹没在成千上万的请求中。
-
我从一家即将工作的公司接到了任务。因此以合法的方式对其进行检查和验证。
-
您不能为数据转储获得报酬吗? unitedstateszipcodes.org/zip-code-database
标签: python web-scraping beautifulsoup