2016-07-28 76 views
-1

我試圖從tripadvisor網站刮評論。文字較長的評論部分顯示爲「更多」鏈接。我已經使用硒打'更多'的鏈接,它的工作,但我在我的最終輸出文件中再次獲得一半的評論。如何獲得全文,即使點擊鏈接以使用硒擴展文本?

我發現完整的評論存儲在不同的課程中,但我如何訪問不同的課程?

請參閱下面我的代碼的一部分:

driver.get(full_url) 
driver.find_element_by_css_selector("span.moreLink").click() 
r = requests.get(full_url) 
soup = BeautifulSoup(r.content, "lxml") 
#soup = BeautifulSoup(source, 'html.parser') 
page_count = int(soup.select('.pagination a')[-1].text.strip()) 
page_results = soup.find_all("p", {"class" : "partial_entry"}) 

回答

0

當你做requests.get(full_url).content你所得到的頁面的原始標記。這與driver所在的狀態無關。(請注意,get呼叫如何通過driver既不通過也不運行driver)。這是一個非常真實的意義,就像在Firefox中打開一個網站,然後運行curl來獲取內容 - 兩者不知道對方。

您需要做的是詢問driver標記當前是什麼樣的,例如使用driver.find_element_by_css_selector("span").text

+0

好的,謝謝!我試過了,它說你新! –

+0

您需要確定在點擊URL後,哪個CSS選擇器實際上與內容匹配。 'span'只是一個例子。 – l0b0