python - 如何在 Python 中使用 selenium webdriver 嵌入谷歌地图的网站中定位和单击标记?
问题描述
我已经找到了可以帮助我的东西,但是缺少信息,因此我无法完全理解该怎么做:我想我必须做 Set "optimized : false",但我不知道我可以在哪里改变这个.
我要从中提取数据的网站是 plugshare.com。标记实际上不是元素,因此我没有 ID 或名称来简化此任务。我发现,当我手动单击标记时打开的信息窗口有一个类和一个位置。当我在 class="gm-style-iw-a" 上单击 selenium 时,我认为是标记,发生了一些事情:浏览器窗口的右侧三分之一变白(看起来像页面“卸载”?)
我认为每个标记都有相同的类别。我想当我用硒点击多次存在的东西时,它只会点击第一个。为什么这不会发生?
我到目前为止的代码是
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
driver = webdriver.Firefox(executable_path=r'PATH')
driver.get('https://www.plugshare.com/xhtml')
close = driver.find_element_by_xpath('/html/body/div[7]/md-dialog/md-toolbar/div/button/md-icon')
close.click() #closes commercial window
search_field = driver.find_element_by_id('input-0')
search_field.send_keys('New York', Keys.ENTER)
mark = driver.find_element_by_css_selector('.gm-style-iw-a')
mark.click()
有人知道该怎么做吗?
非常感谢!
解决方案
推荐阅读
- websocket - 刷新了 cn1lib 文件,但还是一样的错误:“ClassNotFoundException WebSocketNativeImplImpl”
- django - 有没有办法在 Django Rest Framework 中聚合一个字段,该字段将汇总一个字段
- php - Symfony 4:捕获异常
- azure - Azure 数据工厂启用 PolyBase
- javascript - VueJS v-model for object prop 通过嵌套组件不会按预期更新它们
- php - Google longrunning 操作无法将绑定映射到任何 Uri 模板
- laravel - 多级数据库查询
- node.js - node-sqlite3 数据库连接指示数据库在未安装 sqlite 时打开
- java - Wicket - 在点击事件时使用可加载的可拆卸模型初始化组件
- scalajs-bundler - 如何将我的 index.html 捆绑到我的 webpack 包中