Piszę skrypt w języku Python, używając seluminum webdriver, aby pobrać dane ze strony internetowej, i Próbuję kliknąć następny przycisk na stronie internetowej this. W przypadku, gdy przycisk jest zdefiniowany:Python Selenium z Phantomjs - Kliknij opcję Nie powiodło się: ReferenceError: Nie można znaleźć zmiennej
<a id="ctl00_FullRegion_npsGridView_lnkNext" class="nextCol" href="javascript:__doPostBack('ctl00$FullRegion$npsGridView$lnkNext','')">Next</a>
Wih następującego kodu w Pythonie
URL='http://www.nordpoolspot.com/Market-data1/Elspot/Area-Prices/ALL1/Hourly/'
nextId="ctl00_FullRegion_npsGridView_lnkNext"
browser=webdriver.PhantomJS('./phantomjs')
browser.get(URL)
nextBtn=browser.find_element_by_id(nextId)
time.sleep(5)
nextBtn.click()
Działa to dobrze podczas korzystania z przeglądarki Firefox lub Chrome Webdriver ale z Phantomjs otrzymuję następujący błąd.
selenium.common.exceptions.WebDriverException: Message: u'Error Message => \'Click
failed: ReferenceError: Can\'t find variable: __doPostBack\'\n caused by Request
Ten błąd pojawia się w wynikach wyszukiwania google alot ale havnt naprawdę znalazł sposób naprawić przy użyciu phantomjs.
Od tego pytania [SO] (http://stackoverflow.com/questions/16863773/python-selenium-javascript-link-click-fails- wykonać). Spróbuj zamiast tego zadzwonić do metody "prześlij" i daj mi znać? – Rohit
próbowałem już tego. w każdym razie dzięki. submit nie dał błędu, ale pozostawił całą tabelę html pustą. –