`
jvzw63jvzw
  • 浏览: 10528 次
最近访客 更多访客>>
社区版块
存档分类
最新评论

python模拟登录及表单提交

阅读更多

python模拟登录及表单提交
2010年10月25日
  本文将实现从CSDN博客获取内容发布至百度博客,分别实践抓取博客内容、模拟登录、表单提交。在下文代码中间逐一阐述。 # -*- coding: utf-8 -*- import re import urllib import urllib2 import cookielib #获取CSDN博客标题和正文 url = "http://blog.csdn.net/[username]/archive/2010/07/0 5/5712850.aspx" sock = urllib.urlopen(url) html = sock.read() sock.close() content = re.findall('(?).*(?=(.*)', content[0], re.S) title = re.findall('(?)(.*)-.* - CSDN.*(?=)', html, re.S) #根据上文获取内容新建表单值 blog = {'spBlogTitle': title[0].decode('utf-8').encode('gbk'), #百度博客标题 'spBlogText': content[0].decode('utf-8').encode('gbk'),#百度博客内容 'ct': "1", 'cm': "1"} del content del title #模拟登录 cj = cookielib.CookieJar() #用户名和密码 post_data = urllib.urlencode({'username': '[username]', 'password': '[password]', 'pwd': '1'}) #登录路径 path = 'https://passport.baidu.com/?login' opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(c j)) opener.addheaders = [('User-agent', 'Opera/9.23')] urllib2.install_opener(opener) req = urllib2.Request(path, post_data) conn = urllib2.urlopen(req) #获取百度发布博客的认证令牌 bd = urllib2.urlopen(urllib2.Request('http://hi.baidu.c om/[username]/creat/blog')).read() bd = re.findall('(?表单发布博客 req2 = urllib2.Request('http://hi.baidu.com/[username]/co mmit', urllib.urlencode(blog)) #查看表单提交后返回内容 print urllib2.urlopen(req2).read() #请将[username]/[password]替换为您的真实用户名和密码 #搞定收工…… 
分享到:
评论

相关推荐

    Python实现模拟登录及表单提交的方法

    本文实例讲述了Python实现模拟登录及表单提交的方法。分享给大家供大家参考。具体实现方法如下: # -*- coding: utf-8 -*- import re import urllib import urllib2 import cookielib #获取CSDN博客标题和正文 url ...

    python模拟表单提交登录图书馆

    模拟表单提交的原理: 我们都知道Http是无状态的,所以当我们提交的数据和浏览器中正常提交一样,那么服务器就会返回和浏览器中一样的响应。所以我们这里来模拟浏览器表单提交登录广东工业大学的图书馆 ...

    利用python模拟实现POST请求提交图片的方法

    最近在利用python做接口测试,其中有个上传图片的接口,在网上各种搜索,各种尝试。下面这篇文章主要给大家介绍了关于利用python模拟实现POST请求提交图片的相关资料,需要的朋友可以参考借鉴,下面来一起看看吧。

    Python 模拟登陆的两种实现方法

    模拟登陆的重点,在于找到表单真实的提交地址,然后携带cookie,post数据即可,只要登陆成功,我们就可以访问其他任意网页,从而获取网页内容。 方式一: import urllib.request import urllib.parse import ...

    Python在实践中学-新浪Xrez应用升级手记.doc

    转升级新浪Xrez应用过程中,用Python工具解决实践问题,学会模拟表单提交、读取文件、字符处理、编码解码等知识技能。

    【ASP.NET编程知识】Asp.Net模拟表单提交数据和上传文件的实现代码.docx

    【ASP.NET编程知识】Asp.Net模拟表单提交数据和上传文件的实现代码.docx

    Python django搭建layui提交表单,表格,图标的实例

    layui极大的提高了前端开发效率,它极具个性的样式等等都非常吸引人,接下来我将为大家展示如何利用Python的django框架与layui制作极富个性的表单与数据表格 注:忽略创建项目,配置文件,若这部分内容不太明白,...

    如何使用Python的Requests包实现模拟登陆

    前段时间喜欢用python去抓一些页面玩,但都基本上都是用get请求一些页面,...由图片可以看出,页面通过表单提交了三个参数。分别为_csrf,usermane,password。 其中csrf是为了预防跨域脚本伪造。原理很简单,就是每一次

    如何用selenium封装post参数提交示例

    selenium自定义封装支持类似httpclient 的post提交方式,并获取返回值,对于获取异步请求中返回的json对象值很有用。

    Python爬虫基本使用 requests安装 HTTP HTTPS 抓包

    比如想要测试一个前端页面的兼容性、前端页面UI是否有bug,只需要模拟执行表单提交、键盘输入等页面操作 爬虫技术与反爬虫技术 影响 在于野蛮爬取,即`多线程爬取` 采取反爬措施 IP频率、流量限制 ...

    基于 selenium 自动注册apple id的python 脚本+源代码+文档说明

    1.浏览器模拟提交表单。 完成 2.自动输入表单信息。 完成 3.判断图片验证码。(识别验证码没实现,现在是保存验证码图片,并手动在控制台输入。 有需要可以接入第三方打码平台) 完成 4.获取apple邮件验证码,并...

    Python的Flask框架中web表单的教程

    web表单是web应用中最基本的构建要素,我们将通过表单来实现用户发帖和应用登录功能。 完成本章内容你需要基于前面章节完成的微博应用代码,请确认这些代码已安装并能正常运行。 配置 Flask-WTF是WTForms项目的Flask...

    用python登录Dr.com思路以及代码分享

    说明:每个ISP的登录页面不一样,不过我估计算法都是一样的,于是解决方案应该也是相似的,只是表单的key可能不太一样。 首先,分析登录页面。 页面head镶嵌了[removed]标签,所有的提交相关的脚本都在这里。页面...

    WebBrowser

    CHtmlView填充表单和模拟单击事件 怎样利用CHtmlview和IHtmlDocument2填充表单和模拟登录 详细见博客 http://blog.csdn.net/whucv/article/details/7848858

    python利用requests库模拟post请求时json的使用教程

    我们都见识过requests库在静态网页的爬取上展现的威力,我们日常见得最多的为get和post请求,他们最大的区别在于安全性上: ...2、POST用于向服务器提交数据,比如增删改数据,提交一个表单新建一个用

    Python发送form-data请求及拼接form-data内容的方法

    网上关于使用python 的发送multipart/form-data的方法,多半是采用 ulrlib2 的模拟post方法,如下: import urllib2\nboundary='-------------------------7df3069603d6' data=[] data.append('--%s' % boundary) ...

    taobaoMM:用python抓取淘宝女孩是一个简单的爬虫。

    所以,通过firefox的网络监控,获取ajax的url,模拟表单提交的信息,获得服务器返回的json数据,其中表单提交最重要的就是页码,currentPage;解析返回的json数据,获取淘女郎个人信息,接下来根据信息,依次处理即可...

    主流浏览器Driver爬虫

    Driver允许开发人员使用编程语言(如Python、Java、JavaScript等)编写自动化测试脚本,来模拟用户在浏览器中的操作。 主要用途包括: 测试自动化:开发人员和测试人员可以使用Driver来编写自动化测试脚本,测试...

Global site tag (gtag.js) - Google Analytics