我搜索了很多,但無法找到我的問題的解決方案。我認爲這很簡單。自動點擊JavaScript鏈接並獲取結果頁面
我打開了一個網頁,提供了一些參數,如id=123456
。搜索結果頁面包含一個鏈接,如javascript:doSomething('ABC','ID'=123456)
。
我想知道的是,是否有程序,在perl,python,java,c,不管怎樣,都可以將id作爲參數,並自動點擊javascript鏈接,並獲取內容結果頁面。
你有解決這個問題的辦法嗎?
非常感謝!
弗蘭克
我搜索了很多,但無法找到我的問題的解決方案。我認爲這很簡單。自動點擊JavaScript鏈接並獲取結果頁面
我打開了一個網頁,提供了一些參數,如id=123456
。搜索結果頁面包含一個鏈接,如javascript:doSomething('ABC','ID'=123456)
。
我想知道的是,是否有程序,在perl,python,java,c,不管怎樣,都可以將id作爲參數,並自動點擊javascript鏈接,並獲取內容結果頁面。
你有解決這個問題的辦法嗎?
非常感謝!
弗蘭克
可以模擬DOM click事件:
function ClickID(id) { var event = document.createEvent('MouseEvents'); event.initEvent('click', true, true); document.getElementById(id).dispatchEvent(event); }
嗨NullUserException,我不是要刮頁面。它包含數百萬條記錄,並且我試圖在沒有手動點擊的情況下獲取數百條記錄。 – frank 2010-09-12 03:45:03
嗨德蘭Azabani,非常感謝您的答案。不幸的是我只知道一點javascript。看起來你的代碼是一個JavaScript代碼。然後我必須打開一個包含這段代碼的網頁嗎?我怎樣才能使用程序來獲取數據?對不起,這種愚蠢的問題。此外,它看起來我需要提供點擊元素的ID。不幸的是,該頁面似乎沒有它。這裏是頁面源代碼:
這不是正確的答案,我的一般性問題,但沒有解決我的問題。所以我發佈了我所做的事情,並希望在遇到同樣問題時幫助其他人。
基本上我工作在javscript。我查看了頁面的源代碼,發現了一些隱藏的參數。約300個字符參數,我認爲是不可預測的,在那裏!所以我抓住了機械化的價值,並使用參數和賓果瀏覽一個新的網址,它的作品!
所以我的經驗是看網頁的來源,並做一些猜測。
'doSomething'是否可預測地重定向到其他頁面?你可以看一下Javascript源代碼並找出它的作用,然後重現該行爲? – Matchu 2010-09-12 02:19:38
嗨,路易斯,非常感謝您的回覆。是的,我按照你的說法嘗試過。不幸的是,它重定向到像sourceSite這樣的頁面?parm = someVeryLongString,其中someVeryLongString長度大約爲340個字符且不可預測。 -Frank – frank 2010-09-12 02:48:34
那麼你想要刮頁面嗎? – NullUserException 2010-09-12 02:57:49