当前位置: 首页 > 面试题库 >

如何使用seleniumPython在Google上单击第一个结果

罗寒
2023-03-14
问题内容

我想点击google结果上的第一个结果。这是我输入从csv文件读取的chennai
craiglist的代码。因此,我肯定有机结果中的第一个链接将是chennai.craiglist.org。但是我很安静,不确定如何执行此操作。

from selenium import webdriver
    from selenium.webdriver.common.by import By
    from selenium.webdriver.support.ui import Select
    from selenium.common.exceptions import NoSuchElementException
    import unittest, time, re

    class Browse(unittest.TestCase):
    def setUp(self):
    self.driver = webdriver.Firefox()
    self.driver.implicitly_wait(30)
    self.base_url = "http://google.com/"

    filename = 'test.csv'
    line_number = 1
    with open(filename, 'rb') as f:
        mycsv = csv.reader(f)
        mycsv = list(mycsv)
        self.cityname=mycsv[line_number][0]
        self.username=mycsv[line_number][1]
        self.password=mycsv[line_number][2]
        self.verificationErrors = []

def test_browse(self):
    driver = self.driver
    driver.get(self.base_url + "/")
    driver.find_element_by_id("gbqfq").send_keys(self.cityname)

我想知道这行之后会发生什么?

更新

现在我给像

driver.find_elements_by_xpath(".//*[@id='rso']//div//h3/a")[:1].click()

我不确定它是否会起作用。


问题答案:

xpath你选择的是“OK”,但可能不是最好的。

result = driver.find_elements_by_xpath("//ol[@id="rso"]/li")[0] //make a list of results and get the first one
result.find_element_by_xpath("./div/h3/a").click() //click its href


 类似资料:
  • 步骤: 运行命令,通过登录到浏览器获取应用程序默认凭据。 在我的GCP控制台上启用资源管理器API。 下面是工作的Python代码: 但我不能迈出第一步。

  • 我在页面上有大约18张图片,我试图在点击图片后以一种模式显示更大的图片,但每次它只显示第一张图片。 我已经尝试过使用,我在孩子们身上尝试过,我也尝试过将图像设置为不同的ID,并将它们设置为变量。 我目前的尝试是将小图像的路径设置为与大图像的路径相同的id,然后使用查找。我现在只“设置”了前两个图像,因为我还不能让它正常工作。 顺便说一句,我已经尝试了其他放大和弹出窗口和插件的方法,但没有成功,这是

  • 问题内容: 朋友你好,我试图显示我的Jave Gui应用程序中的记录,我做了一些代码,但是当我单击下一步按钮时,它显示了最后一条记录。还有什么其他方法可以查看之间的记录,请帮忙。 问题答案: 您需要将数据库代码与GUI代码分开。您还需要将您的应用程序分解为更小的,更容易编码的步骤。 这是您的应用程序在启动时需要做的事情: 打开与数据库的连接。 选择表Soil_det的所有键,然后将键保存在列表中。

  • 类Canvas扩展java.awt.Canvas实现MouseListener,MouseMotionListener{//Constants for shapes public static final int CIRCLE=1;public static final int RECTANGLE=2; }

  • 我正在测试一个网页,我需要选择几个复选框,然后点击提交。 HTML代码段

  • 我有一个从Google maps下载静态图像的应用程序,将标记放置在我想要的位置(通过将参数传入Google static maps URL来放置)。但是,我也需要能够点击标记。我想我可以将x和y坐标转换为lon/lat,然后用这种方法计算出哪个标记被点击了,但我发现这并不容易。 我知道地图的尺寸(以像素为单位),缩放级别,以及地图的中心点(以像素和lon/lat为单位),所以我跟踪了这篇博文。不