web-scraping 相关问题

Web抓取是从不易提供API或其他自动数据检索方法的网站中提取特定信息的过程。关于“如何开始使用刮擦”(例如使用Excel VBA)的问题应该*进行彻底的研究*,因为有许多功能代码示例可供使用。 Web抓取方法包括第三方应用程序,定制软件的开发,甚至是标准化方式的手动数据收集。

HTTP 标头中没有适当的 Cookie 时出现 403 禁止错误 |蟒蛇

我在 https://dexscreener.com 上遇到网络抓取问题。我发现为了接收状态代码为 200 的服务器响应,不仅需要指定用户...

回答 2 投票 0

抓取 Google 搜索结果 Python BeautifulSoup

我有一个谷歌查询,它显示了8000个带链接的结果,我只想抓取搜索结果中的链接(url),我能够获取第一页链接,有没有什么方法可以抓取下一页。他...

回答 1 投票 0

在动态网页中获取特定关键字作为答案[关闭]

数据集:https://raw.githubusercontent.com/the-curious-analyst/Sem2NITDSProject/main/tanker-water-data-2015.csv 该数据集有一列名为“公寓所在区域”,我想搜索...

回答 1 投票 0

导入XML查询-无法从网站检索数据

在此处输入图像描述我正在尝试使用 ImportXML 检索出现在品牌名称正下方的产品数量。但我收到错误“导入的内容为空” 我正在使用的代码...

回答 1 投票 0

在嵌套跨度下的跨度中抓取信息

我想通过网络抓取获取实时天气数据。我正在考虑使用 BeautifulSoup 来实现这一点。 我想通过网络抓取获取实时天气数据。我正在考虑使用 BeautifulSoup 来实现此目的。 <span class="Column--precip--3JCDO"> <span class="Accessibility--visuallyHidden--H7O4p">Chance of Rain</span> 3% </span> 我想从这个容器中取出 3%。我已经设法使用此代码片段从网站获取另一部分的数据。 temp_value = soup.find("span", {"class":"CurrentConditions--tempValue--MHmYY"}).get_text(strip=True) 我对 rain_forecast 也做了同样的尝试 rain_forecast = soup.find("span", {"class": "Column--precip--3JCDO"}).get_text(strip=True) 但是我的控制台提供的输出是:“--” for print(rain_forecast)。 我能看到的唯一区别是,在应该从跨度获取的“文本”之间,还有另一个跨度。 我遇到 stackoverflow 的另一种方法是使用 Selenium,因为数据尚未加载到变量中,因此输出为“--”。 但我不知道这对我的应用程序来说是否太过分了,或者是否有更简单的解决方案来解决这个问题。 如果您想获取今天的天气预报表,您可以使用此示例: import pandas as pd import requests from bs4 import BeautifulSoup headers = {"User-Agent": "Mozilla/5.0"} url = "https://weather.com/en-IN/weather/today/l/a0e0a5a98f7825e44d5b44b26d6f3c2e76a8d70e0426d099bff73e764af3087a" soup = BeautifulSoup(requests.get(url, headers=headers).content, "html.parser") today_forecast = [] for a in soup.select(".TodayWeatherCard--TableWrapper--globn a"): today_forecast.append( t.get_text(strip=True, separator=" ") for t in a.find_all(recursive=False) ) df = pd.DataFrame( today_forecast, columns=["Time of day", "Degrees", "Text", "Chance of rain"] ) print(df) 打印: Time of day Degrees Text Chance of rain 0 Morning 11 ° Partly Cloudy -- 1 Afternoon 20 ° Partly Cloudy -- 2 Evening 14 ° Partly Cloudy Night Rain Chance of Rain 3% 3 Overnight 10 ° Cloudy Rain Chance of Rain 5% from bs4 import BeautifulSoup # Assuming you have your HTML content in 'html_content' soup = BeautifulSoup(html_content, 'html.parser') # Find the parent span and extract the text, excluding the nested span's text rain_forecast = soup.find("span", {"class": "Column--precip--3JCDO"}).contents[-1].strip() print(rain_forecast)

回答 2 投票 0

Python Web 抓取跨度中的信息,位于嵌套跨度下

我想通过网络抓取获取实时天气数据。但我面临着一个无法找到解决方案的问题。 我正在考虑使用 BeautifulSoup 来实现这一点。 我想通过网络抓取获取实时天气数据。但我遇到了一个无法找到解决方案的问题。 我正在考虑使用 BeautifulSoup 来实现此目的。 <span class="Column--precip--3JCDO"> <span class="Accessibility--visuallyHidden--H7O4p">Chance of Rain</span> 3% </span> 我想从这个容器中取出 3%。我已经设法使用此代码片段从网站获取另一部分的数据。 temp_value = soup.find("span", {"class":"CurrentConditions--tempValue--MHmYY"}).get_text(strip=True) 我对 rain_forecast 也做了同样的尝试 rain_forecast = soup.find("span", {"class": "Column--precip--3JCDO"}).get_text(strip=True) 但是我的控制台提供的输出是:“--” for print(rain_forecast)。 我能看到的唯一区别是,在应该从跨度获取的“文本”之间,还有另一个跨度。 我遇到 stackoverflow 的另一种方法是使用 Selenium,因为数据尚未加载到变量中,因此输出为“--”。 但我不知道这对我的应用程序来说是否太过分了,或者是否有更简单的解决方案来解决这个问题。 如果您想获取今天的天气预报表,您可以使用此示例: import pandas as pd import requests from bs4 import BeautifulSoup headers = {"User-Agent": "Mozilla/5.0"} url = "https://weather.com/en-IN/weather/today/l/a0e0a5a98f7825e44d5b44b26d6f3c2e76a8d70e0426d099bff73e764af3087a" soup = BeautifulSoup(requests.get(url, headers=headers).content, "html.parser") today_forecast = [] for a in soup.select(".TodayWeatherCard--TableWrapper--globn a"): today_forecast.append( t.get_text(strip=True, separator=" ") for t in a.find_all(recursive=False) ) df = pd.DataFrame( today_forecast, columns=["Time of day", "Degrees", "Text", "Chance of rain"] ) print(df) 打印: Time of day Degrees Text Chance of rain 0 Morning 11 ° Partly Cloudy -- 1 Afternoon 20 ° Partly Cloudy -- 2 Evening 14 ° Partly Cloudy Night Rain Chance of Rain 3% 3 Overnight 10 ° Cloudy Rain Chance of Rain 5% 从 bs4 导入 BeautifulSoup 假设您的 HTML 内容位于“html_content”中 soup = BeautifulSoup(html_content, 'html.parser') 找到父范围并提取文本,不包括嵌套范围的文本 rain_forecast = soup.find("span", {"class": "Column--precip--3JCDO"}).contents[-1].strip() 打印(降雨预测)

回答 2 投票 0

需要帮助从 Python Selenium 中具有特定类名的 div 元素中提取重定向 URL

我尝试此代码不起作用,搜索了所有资源,请帮助。 URL 重定向似乎是由 JavaScript 处理的,没有标签或 onclick 事件。 导入时间 来自硒进口

回答 1 投票 0

如何抓取动态加载json内容的网站?

我正在开展一个抓取项目,我正在尝试抓取 NSE 公告页面 - https://www.nseindia.com/companies-listing/corporate-filings-announcements。 现在表格是静态的,但 J...

回答 1 投票 0

即使没有错误,WebScraping 也不起作用

我想设计Python网页抓取代码来抓取这些数据(https://www.nyc.gov/site/tlc/about/tlc-trip-record-data.page)。 这是代码: 导入操作系统 导入请求 随机导入 导入时间 ...

回答 1 投票 0

如何找到按钮元素并单击它?

我尝试单击特定颜色然后单击购买按钮,我找到颜色并可以单击它们,但找不到购买元素。我尝试了一些定位器,如 XPATH、CSS_SELECTOR 等。 从se...

回答 1 投票 0

通过 Xpath 查找元素无法正常工作

从 selenium 导入 webdriver 从 selenium.webdriver.common.by 导入 从 selenium.webdriver.support.ui 导入 WebDriverWait 从 selenium.webdriver.support 导入预期条件作为 EC 我...

回答 1 投票 0

Selenium Driver Web Scraping 在打开多个窗口时无法获取下拉元素

我正在使用以下代码抓取 URL https://ephtracking.cdc.gov/DataExplorer/ 选项 = webdriver.ChromeOptions() 选项.无头 = False options.add_argument("窗口大小=1920,108...

回答 2 投票 0

权限策略标头错误:未启用原始试验控制功能:在无头模式下使用 Chromedriver 时的“兴趣群组”

我正在尝试从 https://www.manta.com/ 网站上抓取餐厅名称及其电话号码。我正在使用 selenium 来自动化整个任务,因为该网站本质上是动态的,同时

回答 2 投票 0

使用 Selenium 抓取 Power BI 仪表板

我在使用 Selenium 抓取 Power BI 仪表板时遇到问题。我似乎正确地抓取了 url,并且具有良好的代码结构,但代码未能成功解析第一个之后的所有列...

回答 1 投票 0

优化 Selenium 脚本以加快执行速度

我使用 Selenium 开发了一个 Python 脚本,用于在 Twitter 上自动执行任务,包括登录、发布带有图像的推文、喜欢自己的推文、转发和注销。当脚本运行时

回答 1 投票 0

优化 Selenium 脚本以提高速度

我使用 Selenium 开发了一个 Python 脚本,用于在 Twitter 上自动执行任务,包括登录、发布带有图像的推文、喜欢自己的推文、转发和注销。当脚本运行时

回答 1 投票 0

如何使所有数组的长度相同? [已关闭]

我正在尝试构建一个Python网络抓取工具来查找网站上的联系信息,然后将该信息保存在Excel中。好吧,它不会真正起作用,我尝试了多种选择。这是代码 导入请求...

回答 1 投票 0

如何从需要点击/切换的网页中提取表格?

我正在尝试从此网页中提取表格,但我只能获取投球表。我也想获得命中表,理论上是这个 URL: https://www.cover...

回答 1 投票 0

使用 Puppeteer 循环抓取多个 URL

我有一个 URL 数组可以从中抓取数据: url = ['url','url','url'...] 这就是我正在做的: urls.map(异步(url)=>{ 等待页面.goto(url); 等待页面.waitForNavigation({ waitUntil: '

回答 5 投票 0

使用 BeautifulSoup 抓取所有链接

我试图从页面上抓取所有比赛报告链接,但有“加载更多”按钮,而且我不想使用selenium。有没有解决方案可以收集所有不使用硒的链接。 谢谢

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.