0

我有HTML,看起來像三個下面的示例聲明:點擊任意一個「1 2 3 4 5 ...」頁面上通過在Python(例如,分裂)使用Selenium:

<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/Selenium/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]'); 

UPDATE 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:\Python27\lib\site-packages\selenium\webdriver\remote\webdriver.py", l 
ine 246, in find_element_by_link_text 
    return self.find_element(by=By.LINK_TEXT, value=link_text) 
    File "C:\Python27\lib\site-packages\selenium\webdriver\remote\webdriver.py", l 
ine 680, in find_element 
    {'using': by, 'value': value})['value'] 
    File "C:\Python27\lib\site-packages\selenium\webdriver\remote\webdriver.py", l 
ine 165, in execute 
    self.error_handler.check_response(response) 
    File "C:\Python27\lib\site-packages\selenium\webdriver\remote\errorhandler.py" 
, line 164, in check_response 
    raise exception_class(message, screen, stacktrace) 
selenium.common.exceptions.NoSuchElementException: Message: u'no such element\n 
(Session info: chrome=28.0.1500.95)\n (Driver info: chromedriver=2.2,platform= 
Windows NT 6.1 SP1 x86_64)' 

回答

0

<a>元素被定義爲一個鏈接。這意味着您可以通過鏈接文本進行選擇。

我不知道Python,但java語法將是By.linkText(##)其中##是您想要點擊的數字。

+0

MrTi,謝謝你的回覆。我的問題是,如果我在「... 11 12 13 14 15 16 17 18 19 20 ...」部分(這是頁面上的逐字字符串),那麼每個橢圓看起來都與元素相同,但其中一個內部命名爲'Page $ 10',另一個命名爲'Page $ 21'。所以我不能專門稱爲'...'。 – user225626

+0

是的,但By.linkText的工作方式不同。它實際上是由可見文本調用,而不是由內部屬性 –

+0

請看我的新帖子。 – user225626

相關問題