Я пытаюсь получить данные с веб-сайта с несколькими страницами. Моя идея состоит в том, чтобы использовать al oop, который использует количество доступных страниц.
Поэтому я использую ссылку с переменной для этой цели. Но это не работает с 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
Может кто-нибудь объяснить мне, как избежать этой проблемы?