Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/326.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 别再翻页了_Python_Selenium_Beautifulsoup - Fatal编程技术网

Python 别再翻页了

Python 别再翻页了,python,selenium,beautifulsoup,Python,Selenium,Beautifulsoup,我正在抓取一页,但我今天遇到的问题是,该页没有另一页,它给了我上一页,没有任何错误,因此我可以确定该页是最后一页 例如: 当我想去的时候:它给了我什么不存在的东西 最后一页: 我如何确定这是使用python3的最后一页 from selenium import webdriver from selenium.webdriver.common.keys import Keys from bs4 import BeautifulSoup import urllib.request page = "

我正在抓取一页,但我今天遇到的问题是,该页没有另一页,它给了我上一页,没有任何错误,因此我可以确定该页是最后一页

例如: 当我想去的时候:它给了我什么不存在的东西 最后一页:

我如何确定这是使用python3的最后一页

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from bs4 import BeautifulSoup
import urllib.request

page = "https://www.supermama.lt/forumas/topic/214375-vilma/page-1"

driver = webdriver.Firefox()
driver.get(page)
dd = driver.page_source

for j in range(100):
    soup = BeautifulSoup(dd, "html.parser")
    my_text = list(soup.findAll("div", class_ = "post-content"))
    for i in my_text:
        #collect some data
        pass

    page = "https://www.supermama.lt/forumas/topic/214375-vilma/page{0}".format(j+2)
    driver.get(page)
    dd = driver.page_source

起初我想检查收集的数据的副本,但这太慢了,因为我有30000个链接,我必须从中收集数据。也许有更简单的解决办法

找到了我自己问题的答案。 要查找页面url,只需使用driver.current\u url

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from bs4 import BeautifulSoup
import urllib.request

page = "https://www.supermama.lt/forumas/topic/214375-vilma/"

driver = webdriver.Firefox()
driver.get(page)

dd = driver.page_source

current_pages = [] 

for j in range(100):

    page_url = driver.current_url

    if(page_url not in current_pages):
        current_pages.append(page_url)

        soup = BeautifulSoup(dd, "html.parser")
        my_text = list(soup.findAll("div", class_ = "post-content"))
        for i in my_text:
            #collect some data
            pass

        page = "https://www.supermama.lt/forumas/topic/214375-vilma/page-{0}".format(j+2)
        driver.get(page)
        dd = driver.page_source

    else:
        print(current_pages)
        driver.quit()
        break

请先发布一些代码尝试