Я пытаюсь получить данные с сайта B2B относительно некоторых продуктов.
Я написал скрипт на python для поиска на этой платформе (это платформа WordPress) с использованием cookiejar и urllib.request. Это работает нормально, я получаю URL-адрес продукта, но когда я пытаюсь загрузить определенный продукт, такой как cookie, больше не работает.
import os, http.cookiejar, urllib.request
# ls is a list with all the products SKU
for v in ls:
cj = http.cookiejar.MozillaCookieJar()
cj.load(os.path.join(os.path.expanduser("~"), ".netscape", "path\\to\\cookieFile\\cookies.txt"))
opener = urllib.request.build_opener(urllib.request.HTTPCookieProcessor(cj))
url = "https://b2b.platform.com/?s="
r = opener.open(url+v)
Пока что эта часть работает нормально. После этого есть регулярное выражение для поиска URL-адреса продукта, а затем я пытаюсь загрузить этот URL-адрес с помощью этого кода
cj = http.cookiejar.MozillaCookieJar()
cj.load(os.path.join(os.path.expanduser("~"), ".netscape", "path\\to\\cookieFile\\cookies.txt"))
opener = urllib.request.build_opener(urllib.request.HTTPCookieProcessor(cj))
r = opener.open(productURL)
Хотя первая часть поиска URL-адреса продукта работает, как и ожидалось, вторая часть, где я пытаюсь загрузить конкретный URL-адрес, выглядит так, как будто он вообще не читает cookie. Результатом HTML является страница входа.
Более того, если я использую
curl --cookie cookies.txt "productURL" -o product.html
Это работает как надо