def login():
cj = cookielib.CookieJar()
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))
login_url = r'http://zhixing.bjtu.edu.cn/member.php?mod=logging&action=login&loginsubmit=yes&infloat=yes&lssubmit=yes&inajax=1'
login_data = urllib.urlencode({'cookietime': '2592000', 'handlekey': 'ls', 'password': 'xxx',
'quickforward': 'yes', 'username': 'digiter'})
opener.open(login_url, login_data)
return opener
返回以后只需要设置url和data就可以Post了。
注意不要在request里设置header,这是因为cookie也是header,如果设置header会导致没有cookie,也就没有登录
request = urllib2.Request(
url=r'http://zhixing.bjtu.edu.cn/forum.php?mod=post&action=newthread&fid=601&extra=&topicsubmit=yes',
data=param
)
print opener.open(request).read()
轻松搞定设置Discuz X主题分类的功能(cookie要模拟浏览器,这里是模仿firefox)
# -*- coding: utf-8 -*-
'''
Created on Dec 24, 2011
@author: rush
'''
import urllib, urllib2, cookielib
import os, time
headers = []
def login():
cj = cookielib.CookieJar()
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))
login_url = r'http://zhixing.bjtu.edu.cn/member.php?mod=logging&action=login&loginsubmit=yes&infloat=yes&lssubmit=yes&inajax=1'
login_data = urllib.urlencode({'cookietime': '2592000', 'handlekey': 'ls', 'password': 'xxx',
'quickforward': 'yes', 'username': 'GuoYuan'})
opener.addheaders = [('Host', 'zhixing.bjtu.edu.cn'),
('User-Agent', 'Mozilla/5.0 (Ubuntu; X11; Linux i686; rv:8.0) Gecko/20100101 Firefox/8.0'),
('Accept', 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8'),
('Accept-Language', 'en-us,en;q=0.5'),
('Accept-Encoding', 'gzip, deflate'),
('Accept-Charset', 'ISO-8859-1,utf-8;q=0.7,*;q=0.7'),
('Connection', 'keep-alive'),
('Referer', 'http://zhixing.bjtu.edu.cn/forum.php'),]
opener.open(login_url, login_data)
return opener
if __name__ == '__main__':
opener = login()
url = r'http://zhixing.bjtu.edu.cn/forum.php?mod=topicadmin&action=moderate&optgroup=2&modsubmit=yes&infloat=yes&inajax=1'
data = {'fid': '601', 'formhash': '0cdd1596', 'frommodcp': '', 'handlekey': 'mods',
'listextra': 'page%3D62', 'moderate[]': '496146', 'operations[]': 'type', 'reason': '...',
'redirect': r'http://zhixing.bjtu.edu.cn/thread-496146-1-1.html', 'typeid': '779'}
data2 = [(k, v) for k,v in data.iteritems()]
cnt = 0
for tid in range(493022, 496146 + 1):
cnt += 1
if cnt % 20 == 0: print
print tid,
data2.append(('moderate[]', str(tid)))
if cnt % 40 == 0 or cnt == 496146:
request = urllib2.Request(url=url, data=urllib.urlencode(data2))
print opener.open(request).read()
data2 = [(k, v) for k,v in data.iteritems()]
分享到:
相关推荐
在Python编程中,登录网站并保存Cookie是一种常见的需求,特别是在自动化测试、数据抓取或模拟用户行为时。本文将详细讲解如何使用Python实现12306登录并保存Cookie的方法,以便于后续的请求能够保持登录状态。 ...
本篇将详细介绍如何使用PycURL在Python中自动处理cookie。 首先,我们需要导入必要的模块,`pycurl`用于处理HTTP请求,`StringIO`用于在内存中处理数据,而不是写入到文件系统: ```python import pycurl from io ...
自动处理 使用session机制 使用场景:动态变化的cookie session对象:该对象和requests模块用法几乎一致.如果在请求的过程中产生了cookie,如果该请求使用session发起的,则cookie会被自动存储到session中. 案例 ...
2. **处理Cookie和Session**:登录成功后,服务器通常会返回一个Cookie或建立Session,用以识别用户身份。在后续的请求中,我们需要携带这些信息。 3. **解析页面**:如果网站使用了动态加载或JavaScript,可能需要...
总的来说,使用Python登录网站是一个综合性的任务,涉及到的知识点广泛,包括Python基础、HTTP协议、requests库的使用、Cookie管理以及可能的验证码识别。掌握这些技能,可以帮助你在自动化测试、数据抓取等方面提升...
requests库允许我们发送GET和POST请求,处理cookies,甚至管理会话,这对于登录网站至关重要,因为登录通常涉及POST请求将用户名和密码发送到服务器,并通过返回的cookie保持会话状态。 `config.py`文件则可能包含...
在这个案例中,我们关注的是使用Python和BeautifulSoup库来构建网络爬虫,以及如何通过处理cookie实现登录特定网站的功能。 首先,BeautifulSoup是一个Python库,用于从HTML或XML文件中提取数据。它通过提供强大的...
这种自动化工具在内容创作者、营销人员或者需要批量处理任务的场景下具有很大的实用价值。然而,需要注意的是,任何未经许可的自动化行为都应遵守相关法律法规,尊重平台规则,避免对他人账号造成影响或引发不良后果...
在本资源"Python-Python爬虫京东自动登录在线抢购商品源码.zip"中,包含了一个使用Python编写的爬虫程序,旨在实现自动化登录京东网站并进行在线抢购商品的功能。这个程序对于开发者来说,是一个很好的学习案例,...
在Python开发中,有时我们需要在脚本中模拟浏览器的行为,比如访问特定网站、登录或执行自动化任务。为了实现这一点,一个关键的步骤是处理Cookie,因为它们存储了用户的身份验证信息。`pycookiecheat`是一个方便的...
在本项目“Python爬虫,京东自动登录,在线抢购商品”中,我们将探讨如何使用Python来实现京东网站的自动登录,并进行在线抢购商品的操作。下面将详细解析这一过程涉及的技术和步骤。 首先,我们需要了解的是网络...
2. **处理Cookie**:在requests中,Session对象可以自动管理Cookie。登录成功后,我们可以使用`session.cookies`来获取和设置Cookie。 3. **处理验证码**:有些网站会使用验证码防止爬虫,此时我们需要识别和输入...
6. **模拟登录**:抢票前通常需要用户登录,Python可以通过模拟填写表单和提交登录信息来实现自动登录,如使用requests库配合cookie管理,或者利用Selenium直接操作登录界面。 7. **验证码识别**:对于有验证码的...
在做自动化的时候,遇到难处理的验证码,我们可以手动登录,然后获取登录到的cookie,添加到浏览器中,就可以实现登录。具体操作看图片信息。以下只是提纲式列举一二,希望对你有帮助。 1、from selenium import ...
Python自动化测试是IT行业中一种常见的测试方式,主要使用Python语言配合Selenium工具来实现Web应用的自动化测试。Python自动化测试具备编写简洁、学习快速、应用广泛等优点,已经成为了测试行业的主流技术之一。 ...
通过以上步骤,我们已经成功实现了使用Python自动登录126邮箱并获取页面数据。需要注意的是,由于126邮箱的安全策略可能会更新,所以实际应用时可能需要根据最新的接口调整代码。此外,为了安全起见,不建议在脚本中...
本文实例讲述了Python基于PycURL自动处理cookie的方法。分享给大家供大家参考。具体如下: import pycurl import StringIO url = "http://www.google.com/" crl = pycurl.Curl() crl.setopt(pycurl.VERBOSE,1) crl....
本例所登录的某网站需要提供用户名,密码和验证码,在此使用了python的urllib2直接登录网站并处理网站的Cookie。 Cookie的工作原理: Cookie由服务端生成,然后发送给浏览器,浏览器会将Cookie保存在某个目录下的...
"seleiunm"是一个针对百家号的Python自动化发布工具,能够帮助用户实现文案的自动发布,节省时间和精力,非常适合内容创作者或者运营人员使用。百家号是百度旗下的一个自媒体平台,为用户提供内容创作和分享的舞台。...