Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/310.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用urllib2(python)提交搜索表单_Python_Urllib2_Cookielib - Fatal编程技术网

使用urllib2(python)提交搜索表单

使用urllib2(python)提交搜索表单,python,urllib2,cookielib,Python,Urllib2,Cookielib,我试图在学校的系统中搜索课程,并使用我的登录信息登录 import urllib, urllib2, cookielib,re username = 'user' password = 'pass' # Login main site cj = cookielib.CookieJar() opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj)) login_data = urllib.urlencode({'userid'

我试图在学校的系统中搜索课程,并使用我的登录信息登录

import urllib, urllib2, cookielib,re

username = 'user'
password = 'pass'

# Login main site
cj = cookielib.CookieJar()
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))
login_data = urllib.urlencode({'userid' : username, 'pwd' : password})
opener.open('https://psns.cc.stonybrook.edu/psp/he90prods/?cmd=login', login_data)
试着找课程是不起作用的,这就是我所拥有的

# Fill in Class search criteria
search_data = {'CLASS_SRCH_WRK2_CATALOG_NBR$73$': '575', 'CLASS_SRCH_WRK2_SUBJECT$69$':'AMS'}
request = urllib2.Request('https://psns.cc.stonybrook.edu/psc/he90prods/EMPLOYEE/HRMS/c/SA_LEARNER_SERVICES.CLASS_SEARCH.GBL', urllib.urlencode(search_data))
response = opener.open(request)
print response.read()
这是我看到的

如果操作正确,下面是应该显示的内容

尚无法发布图像

搜索表单有什么问题?

urllib2.Request的第二个参数是POST数据,而不是GET查询字符串。您可以通过直接将查询字符串附加到URL来发送查询字符串:

request = urllib2.Request('https://psns.cc.stonybrook.edu/psc/he90prods/EMPLOYEE/HRMS/c/SA_LEARNER_SERVICES.CLASS_SEARCH.GBL?' + urllib.urlencode(search_data))