logo
Loading...

window.scrollTo 執行幾次後式窗就沒有繼續往下捲動 - Cupoy

browser.execute_script("window.scrollTo(0, 10000);...

pycrawler,pycrawler-d21

window.scrollTo 執行幾次後式窗就沒有繼續往下捲動

2019/12/27 下午 04:21
Python網路爬蟲討論版
Stegosoft
觀看數:6
回答數:4
收藏數:0
pycrawler
pycrawler-d21

browser.execute_script("window.scrollTo(0, 10000);")  執行幾次後式窗就沒有繼續往下捲動

回答列表

  • 2019/12/27 下午 04:53
    張維元 (WeiYuan)
    贊同數:0
    不贊同數:0
    留言數:0

    嗨,你可以多描述一點資訊嗎?如果只執行這一行的話,應該只會執行一次而已。例如這一段程式碼出自哪裡,你預期應該怎樣,實際上卻是怎樣之類的描述。

  • 2019/12/28 上午 11:49
    Jeffrey
    贊同數:0
    不贊同數:1
    留言數:0

  • 2019/12/30 下午 06:20
    Stegosoft
    贊同數:0
    不贊同數:0
    留言數:2

    def browser_pagedown(_actions):
       time
    .sleep(1)
       _actions
    .send_keys(Keys.PAGE_DOWN)
       _actions
    .perform()

    browser
    = webdriver.Chrome(executable_path='chromedriver')

    browser
    .get("https://www.ettoday.net/news/news-list.htm")

    str_date_yesterday
    =(datetime.datetime.today()+datetime.timedelta(days=-1)).strftime("%Y/%m/%d")
    bool_yesterday
    =False
    rep
    =re.compile(f'{str_date_yesterday}.*')

    actions
    = ActionChains(browser)

    while (bool_yesterday==False):
       soup
    = BeautifulSoup(browser.page_source, "html5lib")
       items
    = soup.find_all('span',text=rep)
       
    if (len(items)>0):
           bool_yesterday
    =True
       
    else:
           browser_pagedown(actions)


    用find_all到昨天的日期而停止,尚未找到有繼續觸發事件,但是selenium的網頁卻沒有往下滑動,

    感謝。

  • 2020/01/18 上午 10:46
    JJLai
    贊同數:0
    不贊同數:0
    留言數:0

    請問這個問題有解答嗎?

    卡在D21卡很久,用程式拉捲軸好像有個限制

    練習中有個取ETToday三天前的新聞,用程式拉個一天前就拉不下去了

    這題的解答該不會是要再結合操作元件 (按鈕),頁面上有個用日期查詢的元件 

    可是好像還沒有教操作元件後,取得後來網頁的方式?