【发布时间】:2022-11-14 03:43:44
【问题描述】:
我目前尝试在这个特定的网站上为一个学校项目https://data.census.gov/cedsci/table?q=53706%20income&tid=ACSST5Y2020.S1901刮一个值 如果您搜索 Median income (dollars),它是下面的第一个,这应该是该地区的平均收入,comp-id 由于某种原因不断变化
This median income estimate is what I'm looking for
我在网站上尝试了几种方法来遍历嵌套的 div,但运行后我无法获得任何结果,下面是我尝试使用的代码,但它一直没有返回给我。 任何帮助将不胜感激,谢谢!
import csv
import requests
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import pandas as pd
from bs4 import BeautifulSoup
DRIVER_PATH = 'chromedriver_107.exe'
driver = webdriver.Chrome(executable_path=DRIVER_PATH)
url = 'https://data.census.gov/cedsci/table?q=' + '53706' + '%20income&tid=ACSST5Y2020.S1901'
driver.get(url)
page = requests.get(url)
content = driver.page_source
soup = BeautifulSoup(content, 'lxml')
a = soup.findAll("div", {"comp-id":"1539"})
print(a)
【问题讨论】:
-
该页面大量使用了javascript。问题可能是您没有给它足够的时间来处理所有 javascript,因此当您查找该元素时尚未创建该元素。
-
我认为它会在几秒钟后返回一个空的 [] 后自动关闭,有没有办法让它运行更长时间?
-
如果我打开你说的那个页面,我在浏览器 devtool 中搜索 comp-id = 1539 没有出现任何东西,你确定你分享的链接是正确的吗?是否有任何其他步骤无法到达该元素?
-
哦,我刚刚意识到它每次都会改变,如果你搜索收入中位数(美元),它应该是下面的第一个
-
但如果我搜索类类型,我也没有得到任何结果......
标签: python selenium beautifulsoup