首页 > 解决方案 > Errno 2. 没有这样的文件或目录。美丽的汤链接与可变变量

问题描述

我尝试从具有多个页面的网站中提取数据。我的想法是使用一个使用可用页面数的循环。

因此,我为此目的使用带有变量的链接。但它不适用于 bs4,我不明白为什么。相同的链接适用于方法“driver.get”,但对于“美丽的汤”,会出现错误 [Errno 2]。

#First time data upload from the site
driver = webdriver.Firefox()
driver.get("https://www.site.ca/dried")
doc = BeautifulSoup(driver.page_source, "html.parser")
results = doc.find("div", {"class": "row js-equalize"})
links = results.findAll("a")

#Calculation of the total amount of available pages and creation of a loop
for lis in results.find_all('ul', attrs={"class" : "pull-right pagination"}):
    p = lis.text.replace("Page ","")
    p = re.sub('[^0-9]+', '', p)
    for i in range(len(p)):
        j=i+1
        driver.get("https://www.site.ca/dried-?page="+str(j))
        wait = WebDriverWait(driver, 500000)

        list_of_sku = []

        soup = BeautifulSoup(open('https://www.site.ca/dried-?page='+str(j)), "html.parser")

这是我得到的错误。当我单击下面的链接时,它运行良好。(出于隐私目的更改了网站名称)

soup = BeautifulSoup(open('https://www.site.ca/dried-?page='+str(j)), "html.parser")
FileNotFoundError: [Errno 2] No such file or directory: 'https://www.site.ca/dried-?page=1'

Process finished with exit code 1

谁能向我解释如何避免这个问题?

标签: python-3.xbeautifulsouperrno

解决方案


推荐阅读