在Python中使用Selenium(例如Splinter)单击页面上的"1 2 3 4 5 ..."中的任何一个:



我有一个HTML,它看起来像下面三个示例语句:

<a href="javascript:__doPostBack('ctl00$FormContent$gvResults','Page$10')">...</a>
<a href="javascript:__doPostBack('ctl00$FormContent$gvResults','Page$12')">12</a>
<a href="javascript:__doPostBack('ctl00$FormContent$gvResults','Page$13')">13</a>

(我现在在第11页。)

我不知道Py/SeSelenium/Splinter语法,该语法用于选择列表中的一个页码并单击它转到该页面。(此外,我需要能够将参数中的元素识别为,例如,"Page$10"或"Page$12",如__doPostBack表示法所示。也许用这么多词来说,只写一个"下一页"就可以了,但我甚至不知道如何做到这一点。)

谢谢你的帮助。

UPDATE II:以下是我必须使用的代码:

import time
import win32ui
import win32api
import win32con
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from ctypes import *
from selenium.webdriver.common.by import By

driver = webdriver.Chrome()
driver.get('http://[site]');

更新III:

Traceback (most recent call last):
  File "montpa_05.py", line 47, in <module>
    continue_link = driver.find_element_by_link_text('4')
  File "C:Python27libsite-packagesseleniumwebdriverremotewebdriver.py", l
ine 246, in find_element_by_link_text
    return self.find_element(by=By.LINK_TEXT, value=link_text)
  File "C:Python27libsite-packagesseleniumwebdriverremotewebdriver.py", l
ine 680, in find_element
    {'using': by, 'value': value})['value']
  File "C:Python27libsite-packagesseleniumwebdriverremotewebdriver.py", l
ine 165, in execute
    self.error_handler.check_response(response)
  File "C:Python27libsite-packagesseleniumwebdriverremoteerrorhandler.py"
, line 164, in check_response
    raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.NoSuchElementException: Message: u'no such elementn
 (Session info: chrome=28.0.1500.95)n  (Driver info: chromedriver=2.2,platform=
Windows NT 6.1 SP1 x86_64)'

<a>元素被定义为链接。这意味着您可以通过链接文本来选择它。

我不知道Python,但java语法应该是By.linkText(##),其中##是您想要点击的数字。

相关内容

  • 没有找到相关文章

最新更新