我正在尝试从B2B站点获取有关某些产品的数据。
我写了一个python脚本,使用cookiejar和urllib.request在该平台(它是wordpress平台)上进行搜索。一切正常,我确实获得了产品网址,但是当我尝试加载特定产品时,例如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
这可以正常工作