selenium-webdriver 相关问题

Selenium-WebDriver提供WebDriver API,用于控制不同编程语言的浏览器(“语言绑定”)。使用此标记时,还要为正在使用的编程语言添加标记。

如何将selenium webdriver管理器与node/javascript一起使用?

我想拥有最新的浏览器引擎而无需手动下载它们,因此我找到了webdriver管理器。尽管 selenium 文档提到,关于 webdriver 管理器, // 没有

回答 2 投票 0

从 tkinter 调用变量路径

我正在Python中运行一段代码,它分为两部分,第一个部分是在页面上执行网页抓取的函数,第二个部分是使用tkinter打开一个界面供用户选择...

回答 1 投票 0

Appium c# windows 显示异常:目前仅支持笔和触摸指针输入源类型

此代码抛出异常:当前仅支持笔和触摸指针输入源类型 动作 actionRightClick = new Actions(session); actionRightClick.Build(); 操作右键单击。

回答 2 投票 0

获取 invalidelementstate 异常:消息:无效元素状态

在我们的应用程序中,我们有一个编辑器,我需要在其中输入数据,但它是 Div 。这是我的元素外部 HTML 供参考 在我们的应用程序中,我们有一个编辑器,我需要在其中输入数据,但它是 Div 。这是我的元素外部 HTML,供参考 <div class="view-lines monaco-mouse-cursor-text" role="presentation" aria-hidden="true" data-mprt="8" style="position: absolute; font-family: &quot;Fira Code&quot;, Menlo, Monaco, &quot;Courier New&quot;, monospace; font-weight: normal; font-size: 12px; font-feature-settings: &quot;liga&quot;, &quot;calt&quot;; font-variation-settings: normal; line-height: 18px; letter-spacing: 0px; width: 1590px; height: 61px;"><div style="top:5px;height:18px;" class="view-line"><span><span></span></span></div></div> 当我使用下面的代码在机器人中输入文本时出现异常 Input text //div[@class='view-lines monaco-mouse-cursor-text'] ${query} 获取 invalidelementstateException:消息:无效元素状态 您需要激活输入元素并将其用作 Input Text 的定位器。尝试单击 div 元素,然后检查页面中是否有 input 元素。

回答 1 投票 0

SessionNotCreatedException:无法使用 unDetected_chromedriver 连接到 Chrome

注意:它在我的本地计算机上运行得很好,一旦我将其推送到 VPS,它就停止工作了。 我安装了所有依赖项等。我不知道还能做什么。 我遇到 SessionNotCreatedExcep...

回答 1 投票 0

Selenium - 无法使用 xpath 找到元素

我正在用Python编写一个网络爬虫来获取产品列表的当前补丁版本。我试图通过 XPATH 查找文本,但被告知不存在这样的元素。我已经尝试过...

回答 1 投票 0

获取浏览器当前URL

在 Selenium Nodejs 中,如何获取正在测试的页面的当前 url(我的测试脚本运行时假设页面最初已被重定向)

回答 4 投票 0

使用 Selenium Webdriver 与 Stripe Card Element iFrame 交互 - Cucumber/Selenium Java

我有一个表单,我想在 Java 中使用 Cucumber 和 Selenium Webdriver 来自动化 - 在这个表单中,我们有一个从 Stripe 使用的卡片元素。我们称之为 div,剩下的由 stripe 完成。我是...

回答 5 投票 0

将 python selenium chromedriver 作为 systemd 服务运行

我有可在 chromedriver 上运行的 selenium 解析器。当我在 bash 中启动它时,效果很好。但是当我开始服务时。它返回 无法检测到chrome版本。尝试使用最新的驱动程序...

回答 2 投票 0

使用selenium提取标题

我正在尝试使用 Selenium 从网站上抓取食谱标题,但我遇到了一个问题,我只能提取一些标题,而其他标题则返回空字符串。 我正在使用

回答 1 投票 0

无法使用Selenium和Python截取简单网页的截图

我刚开始使用 Selenium。 我必须截取一个简单网页的屏幕截图,但即使我已经设置了高度,它仍然显示下面的错误。 selenium.common.exceptions.WebDriverException:消息:

回答 1 投票 0

使用 Selenium 或 Beautiful soup 刮擦 hulkapps 表

我有一个正在尝试抓取的网址:https://papemelroti.com/products/live-free-badge 但好像找不到这个表类 <... 我正在尝试抓取以下网址:https://papemelroti.com/products/live-free-badge 但是好像找不到这个表类 <table class="hulkapps-table table"><thead><tr><th style="border-top-left-radius: 0px;">Quantity</th><th style="border-top-right-radius: 0px;">Bulk Discount</th><th style="display: none">Add to Cart</th></tr></thead><tbody><tr><td style="border-bottom-left-radius: 0px;">Buy 50 + <span class="hulk-offer-text"></span></td><td style="border-bottom-right-radius: 0px;"><span class="hulkapps-price"><span class="money"><span class="money"> ₱1.00 </span></span> Off</span></td><td style="display: none;"><button type="button" class="AddToCart_0" style="cursor: pointer; font-weight: 600; letter-spacing: .08em; font-size: 11px; padding: 5px 15px; border-color: #171515; border-width: 2px; color: #ffffff; background: #161212;" onclick="add_to_cart(50)">Add to Cart</button></td></tr></tbody></table> 我已经有了我的 Selenium 代码,但它仍然没有抓取它。这是我的代码: from selenium import webdriver from selenium.webdriver.chrome.service import Service from selenium.webdriver.chrome.options import Options from bs4 import BeautifulSoup import time # Set up Chrome options chrome_options = Options() chrome_options.add_argument("--headless") chrome_options.add_argument("--no-sandbox") chrome_options.add_argument("--disable-dev-shm-usage") service = Service('/usr/local/bin/chromedriver') # Adjust path if necessary driver = webdriver.Chrome(service=service, options=chrome_options) def get_page_html(url): driver.get(url) time.sleep(3) # Wait for JS to load return driver.page_source def scrape_discount_quantity(url): page_html = get_page_html(url) soup = BeautifulSoup(page_html, "html.parser") # Locate the table containing the quantity and discount table = soup.find('table', class_='hulkapps-table') print(page_html) if table: table_rows = table.find_all('tr') for row in table_rows: quantity_cells = row.find_all('td') if len(quantity_cells) >= 2: # Check if there are at least two cells quantity_cell = quantity_cells[0].get_text(strip=True) # Get quantity text discount_cell = quantity_cells[1].get_text(strip=True) # Get discount text return quantity_cell, discount_cell return None, None # Example usage url = 'https://papemelroti.com/products/live-free-badge' quantity, discount = scrape_discount_quantity(url) print(f"Quantity: {quantity}, Discount: {discount}") driver.quit() # Close the browser when done 它不断返回“无” 供参考: 折扣数据从此 https://volumediscount.hulkapps.com/api/v2/shop/get_offer_table API 端点加载,当您使用 selenium driver.page_source 返回页面源时,bs4 没有要抓取的表名称,我尝试了您的代码并确认 hulkapps-table 不存在于回应!所以很明显的反应是 None, 我的回答: 我使用了这个 https://volumediscount.hulkapps.com/api/v2/shop/get_offer_table API 端点以及此请求中的 product_id https://papemelroti.com/products/live-free-badge.json,这是我的代码,它是基本的: import requests import json def getDiscount(root_url): prod_resp = requests.get(f'{root_url}.json').content #Get product_id prod_id = json.loads(prod_resp)['product']['id'] disc_url = 'https://volumediscount.hulkapps.com/api/v2/shop/get_offer_table' #Discount URL data = f'pid={prod_id}&store_id=papemelroti.myshopify.com' headers = { "User-Agent":"Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:130.0) Gecko/20100101 Firefox/130.0", "Content-Type":"application/x-www-form-urlencoded; charset=UTF-8" } resp = requests.post(disc_url, data=data, headers=headers).content data_json = json.loads(resp) disc_json = json.loads(data_json['eligible_offer']['offer_levels'])[0] #Offer has two variants: 'Price' and 'Off' so you can use condition if you like to scrape products other than 'live-free-badge' if 'price_discount' in disc_json[2]: print(f"Product ID:{prod_id} (Quantity: {disc_json[0]}, Discount: {disc_json[1]} Price discount)") elif 'Off' in disc_json[2]: print(f"Product ID:{prod_id} (Quantity: {disc_json[0]}, Discount: {disc_json[1]}% Off)") #sample for both 'Off' and 'Price' getDiscount('https://papemelroti.com/products/dear-me-magnet') getDiscount('https://papemelroti.com/products/live-free-badge') 输出: Product ID:7217967726790 (Quantity: 50, Discount: 10% Off) Product ID:104213217289 (Quantity: 50, Discount: 1.00 Price discount) 让我知道这是否可以或者您是否想严格使用硒

回答 1 投票 0

数据抓取动态网站性能

我想抓取一个报纸档案网站(genios.de),但遇到了一个问题,即单击后该网站版本的目录会动态呈现。预览窗口打开...

回答 1 投票 0

如何从发送到开发工具中网络选项卡上的站点的请求中提取数据?

我在 python 上使用 selenium 进行自动化。 我指的是例如在此网站 https://app.opulabs.com/login 输入电子邮件和密码,然后按“继续”A &q...

回答 1 投票 0

Python Selenium 在 html 页面中嵌套 div 和 iframe

我想访问嵌套html页面中的按钮:多个div和iframe 按钮位于复杂的 html 页面中。如何切换驱动到对应的框架。 driver.find_element(通过...... ...

回答 1 投票 0

Python selenium 无头浏览器窗口

这是我项目的一段代码 从硒导入网络驱动程序 从 selenium.webdriver.common.by 导入 从 selenium.webdriver.edge.service 导入服务 来自 selenium.webdriver.edge.opt...

回答 1 投票 0

Ruby VCR 测试未捕获来自 sinatra 的 http 调用

我有一个 Sinatra 应用程序,其中包含以下调用; 得到 '/test' 做 @res = Net::HTTP.get_response(URI('http://www.iana.org/domains/reserved')) erb:测试 结尾 有风景; <%= @res.

回答 1 投票 0

按属性查找元素

我正在尝试查找具有属性的元素。好吧,我可以在 Selenium 中找到带有 Id、tagName、Xpath 和所有其他预定义方法的元素。但是,我正在尝试编写一种专门用于...

回答 4 投票 0

Selenium WebDriver 等待元素显示

我在Google和SO网站上进行了搜索,我得到了JAVA的答案,但似乎没有得到node.js的答案 我有一个网络应用程序需要一些时间才能加载。我希望 selenium 程序等待...

回答 10 投票 0

无法在 Ubuntu VM 上启动 Selenium Web Scraper

var chromeOptions = new ChromeOptions(); ChromeOptions 选项 = new ChromeOptions(); 选项.AddArgument(“无头”); options.AddArgument("disable-gpu"); 选项.AddArgument(&q...

回答 1 投票 0

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