[問題] 網頁爬蟲POST問題

看板Python作者 (amarco)時間8年前 (2017/01/26 11:19), 編輯推噓2(203)
留言5則, 5人參與, 最新討論串1/1
大家好 最近研究需要,正在寫一個爬蟲抓tripadvisor上面的review資料 以此網頁為例: https://www.tripadvisor.com.tw/Hotel_Review-g293913-d306447-Reviews-Grand_Hyatt_Taipei-Taipei.html 但因為點進去時,預設是只有顯示中文的review,但我想要抓取所有語言的reivew,所以要點選所有語言。 我看FORM DATA裡面的filterLang會從zhTW變成ALL,所以我試著用POST去讀網頁原始碼,但是結果一直無法成功讀取所有的review。 網頁也變成是錯誤。不知道是哪裡出了問題,請大家幫忙看一下。謝謝大家!!!! 程式碼: import requests payload = {'filterLang':'ALL'} res = requests.post('https://www.tripadvisor.com.tw/Hotel_Review-g293913-d306447-Reviews-Grand_Hyatt_Taipei-Taipei.html', data = payload) print (res.text) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 如果用GET,那網頁就只顯示有中文的review。 import requests from bs4 import BeautifulSoup as bs reviews = requests.get('https://www.tripadvisor.com.tw/Hotel_Review-g293913-d306447-Reviews-Grand_Hyatt_Taipei-Taipei.html') soup = bs(reviews.text, "html.parser") for review in soup.select('.reviewSelector'): print (review.select('.noQuotes')[0].text) -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 72.182.35.148 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1485400793.A.C56.html

01/26 14:38, , 1F
headers={'X-Requested-With': 'XMLHttpRequest'} 加這個
01/26 14:38, 1F

01/28 08:00, , 2F
謝謝c大,已順利取得正確頁面!
01/28 08:00, 2F

02/08 11:41, , 3F
想請問為什麼要加這一個段呀?
02/08 11:41, 3F

02/09 13:55, , 4F
這個問題只能問寫網站的人
02/09 13:55, 4F

02/10 00:13, , 5F
爬蟲就是兵來將擋水來土掩. server要甚麼你就給他甚麼
02/10 00:13, 5F
文章代碼(AID): #1OYMhPnM (Python)
文章代碼(AID): #1OYMhPnM (Python)