Python CookieConflicertRor-尝试以编程方式登录到Google Finance时的APISID

Python CookieConflicertRor-尝试以编程方式登录到Google Finance时的APISID,python,python-requests,google-finance,Python,Python Requests,Google Finance,我正试图编写一个脚本,以编程方式登录到谷歌金融,查看我的投资组合,然后在我的桌面上显示结果。我正在使用请求模块,当前卡在“登录”部分 我一直收到此错误requests.cookies.CookieConflicacterRor:有多个cookies的名称为“APISID” 这是整个脚本,错误出现在第48行。我猜这与连接没有正确回收有关 #!/usr/bin/env python import getpass import re import requests email = raw_inpu

我正试图编写一个脚本,以编程方式登录到谷歌金融,查看我的投资组合,然后在我的桌面上显示结果。我正在使用
请求
模块,当前卡在“登录”部分

我一直收到此错误
requests.cookies.CookieConflicacterRor:有多个cookies的名称为“APISID”

这是整个脚本,错误出现在第48行。我猜这与连接没有正确回收有关

#!/usr/bin/env python

import getpass
import re
import requests

email = raw_input("Enter your Google username: ")
password = getpass.getpass("Enter your password: ")

session = requests.Session()

# Define URLs
login_page_url = 'https://accounts.google.com/ServiceLogin?passive=true&service=finance'
authenticate_url = 'https://accounts.google.com/ServiceLoginAuth?service=finance'
gf_home_page_url = 'http://www.google.com/finance/portfolio'

login_page_contents = session.get(login_page_url).text

# Find GALX value
galx_match_obj = re.search(r'name="GALX"\s*value="([^"]+)"', login_page_contents, re.IGNORECASE)
galx_value = galx_match_obj.group(1) if galx_match_obj.group(1) is not None else ''

# Find DSH value
dsh_match_obj = re.search(r'id="dsh"\s*value="([^"]+)"', login_page_contents, re.IGNORECASE)
dsh_value = dsh_match_obj.group(1) if dsh_match_obj.group(1) is not None else ''

# Set up login credentials
login_params = {
   'Email': email,
   'Passwd': password,
   'continue': 'http://www.google.com/finance/portfolio',
   'followup': 'http://www.google.com/finance/portfolio',
   'service': 'finance',
   'GALX': galx_value,
   'pstMsg': 0,
   'dnConn': '',
   'checkConnection': '',
   'timeStmp': '',
   'secTok': '',
   'bgresponse': 'js_disabled',
   'PersistentCookie': 'yes'
}

print galx_value
print dsh_value

# Login
r = session.post(authenticate_url, params=login_params) # <- Error thrown here
print r.text
exit
#/usr/bin/env python
导入getpass
进口稀土
导入请求
电子邮件=原始输入(“输入您的谷歌用户名:”)
password=getpass.getpass(“输入密码:”)
会话=请求。会话()
#定义URL
登录页面https://accounts.google.com/ServiceLogin?passive=true&service=finance'
验证https://accounts.google.com/ServiceLoginAuth?service=finance'
gf\u主页\u url='1!'http://www.google.com/finance/portfolio'
login\u page\u contents=session.get(login\u page\u url).text
#求GALX值
galx_match_obj=re.search(r'name=“galx”\s*value=“([^”]+)”,登录页面内容,re.IGNORECASE)
galx_值=galx_匹配对象组(1),如果galx_匹配对象组(1)不是其他组“”
#查找DSH值
dsh_match_obj=re.search(r'id=“dsh”\s*value=“([^”]+)”,登录页面内容,re.IGNORECASE)
dsh_值=dsh_匹配对象组(1),如果dsh_匹配对象组(1)不是其他组“”
#设置登录凭据
登录参数={
“电子邮件”:电子邮件,
“Passwd”:密码,
“继续”:http://www.google.com/finance/portfolio',
“后续行动”:http://www.google.com/finance/portfolio',
‘服务’:‘金融’,
“GALX”:GALX_值,
“pstMsg”:0,
“dnConn”:“,
“检查连接”:“,
“timeStmp”:“,
“secTok”:“,
“bgresponse”:“js_已禁用”,
“PersistentCookie”:“是”
}
打印galx_值
打印dsh_值
#登录

r=session.post(authenticate_url,params=login_params)#这是
请求中的一个错误,请参阅

当前建议的修复方法是删除
请求/会话.py
的第163行:

resp.cookies.update(cookiejar)

你能给我们这个异常的完整回溯吗?是的,请参阅更新:)谢谢,删除的行不对,但这是正确的问题。(注意:我是做出更改并随后请求修复的“天才”)@sigmavirus24:我知道:-P我在这里使用的是OP回溯行号,而不是补丁中的行号;我推测,自从您编写修补程序以来,该文件中的其他一些内容已经发生了更改…-)谢谢Martjin,今天晚些时候我会试一试的!
resp.cookies.update(cookiejar)