使用python请求检索eBay登录Cookies

时间:2018-08-29 00:38:04

标签: python cookies python-requests ebay webautomation

所以我正在编写代码以通过python将我登录到我的ebay中,我想使用请求而不是使用硒来完成此操作。一切都进行得很顺利,直到我遇到了一组我认为存储在一个像素中的cookie为止。到目前为止,这是我的代码:

#!/usr/bin/env python
import requests
import sys
import time
import os
import platform
r = requests.Session()
r.headers.update({'User-Agent' : 'Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Firefox/52.0'})
x = r.get('https://www.ebay.com/')
with open('ldata', 'w+') as ldata:
    ldata.write(str(x.content))
    ldata.close()
with open('ldata', 'r') as ldata:
    for line in ldata:
        if('https://rover.ebay.com/roversync/?site=' in line.strip()):
            lnk = str(line.strip().split('src="')[1]).split('"')[0]
            break;
    ldata.close()
with open('ldata', 'r') as ldata:
    for line in ldata:
        if('https://svcs.ebay.com/delstats/imp/rtm?p=' in line.strip()):
            svc = str(line.strip().split('data-rtm-pixel="')[1]).split('" d')[0]
            break;
    ldata.close()
svc = svc.replace('amp;','')
with open('ldata', 'r') as ldata:
    for line in ldata:
        if('sin:0,ct:0,pageId:' in line.strip()):
            pcode = str(line.strip().split('sin:0,ct:0,pageId:')[1]).split(',')[0]
            break;
    ldata.close()
print(pcode)
os.remove('ldata')
r.headers.update({'Referer' : 'https://www.ebay.com/'})
payload = {
    'dp1' : x.cookies['dp1'],
    'ebay' : x.cookies['ebay'],
    'nonsession' : x.cookies['nonsession'],
    's' : x.cookies['s']
    }
y = r.get(lnk,data=payload)
payload = {
    'dp1' : x.cookies['dp1'],
    'ebay' : x.cookies['ebay'],
    'nonsession' : x.cookies['nonsession'],
    'npii' : y.cookies['npii'],
    's' : x.cookies['s']
    }
h = r.get(svc,data=payload)
print(h.status_code)
print(h.cookies)
print(h.headers)
print(h.content)

我的问题是svc url有效,但是,当我查看页面内容时,它读取的页面无响应,并且没有返回cookie,尽管它具有200响应代码。有帮助吗?

0 个答案:

没有答案