作者timwen (婚前憂鬱症)
看板Python
標題[問題] Selenium爬資料時點不到下一頁
時間Tue Feb 12 03:13:05 2019
小弟爬蟲新手
之前看到網路有人分享爬世界盃的隊伍資料的程式碼
就抄下來練習...
http://zq.win007.com/big/team/TeamSche/19.html
這是我練習的網頁,英超Arsenal的球隊賽程
我想練習把這52頁的賽程抓下來
我的程式碼如下:
# -*- coding: UTF-8 -*-
import selenium
import bs4
import traceback
import time
import csv
from selenium import webdriver
from selenium.common.exceptions import NoSuchElementException
from selenium.webdriver.common import keys
driver=webdriver.Chrome()
driver.get('
http://zq.win007.com/big/team/TeamSche/19.html')
target=driver.find_elements_by_xpath('//div[@id="div_Table2"]/table/tbody/tr')
for index in range(60):
...程式碼省略...
print(mergegame)
driver.find_elements_by_link_Text('下一頁').click()
driver.close()
我點選不到下一頁,執行60次的迴圈時,
會不斷重複抓第一頁的資訊
如果不能用link_text,有更好的解決方法嗎??
第一次發文,不知道描述的問題跟提供的線索足不足夠
搜尋舊文找Selenium時也找不到相關線索
還請大家海涵...
感謝解答
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.169.161.243
※ 文章網址: https://www.ptt.cc/bbs/Python/M.1549912388.A.5AB.html
推 rexyeah: find by css selector or by xpath呢? 02/12 08:04
推 HenryLiKing: 你要看看是不是已經被當作機器人了,有可能被塞假資 02/12 08:35
→ HenryLiKing: 料了OAO 02/12 08:35
推 wsybu: 設定一下useragent...因為我記得預設user agent裡面有 02/12 14:47
→ wsybu: headless的字串..可能會被server發現 02/12 14:48
推 max0616: 用用看xpath吧 02/13 23:27
→ ntumath: 你用的是find_elements,回傳的是一個list 02/14 02:14
→ ntumath: driver.find_elements_by_link_text('下一頁')[0].click 02/14 02:15
→ ntumath: 如果你改用css或xpath還是用elements的話,會鬼打牆XD 02/14 02:18