python http requests 怎么实现模拟登录,提交表单

Python015

python http requests 怎么实现模拟登录,提交表单,第1张

以下实例是一个完整的代码,实现了从博客获取内容发布至百度,分别实践抓取博客内容、模拟登录、表单提交这几步;

#注意,以下程序是一个完全程序,如果只需要实现模拟登录,提交表单,删除抓取部分即可,相关的代码已经清楚标注,可以根据自己实际情况修改。

代码如下:

# -*- coding: utf-8 -*-

import re

import urllib

import urllib2

import cookielib

#第一步,获取博客标题和正文 ,“IP”可以改为实际地址;

url = "IP"

sock = urllib.urlopen(url)

html = sock.read()

sock.close()

content = re.findall('(?<=blogstory">).*(?=<p class="right artical)', html, re.S)

content = re.findall('<script.*>.*</script>(.*)', content[0], re.S)

title = re.findall('(?<=<title>)(.*)-.* - CSDN.*(?=</title>)', 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(cj))

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.com/[username]/creat/blog')).read()

bd = re.findall('(?<=bdstoken\" value=\").*(?=ct)', bd, re.S)

blog['bdstoken'] = bd[0][:32]

#设置分类名

blog['spBlogCatName'] = 'php'

#第四步,比较表单,提交表单;req2 = urllib2.Request('http://hi.baidu.com/[username]/commit', urllib.urlencode(blog))

#最后,查看表单提交后返回内容,检验;

print urllib2.urlopen(req2).read()

#注意:将[username]/[password]替换为自己真实用户名和密码

python认证证书有很多,比如常见的证书有:全国计算机等级考试Python程序语言设计、Python Institute资格认证初级PCEP证书、Python Institute资格认证中级PCAP证书、Python Institute资格认证高级PCPP证书、工信部Python技术应用工程师专项技术证、百度技术认证深度学习工程师。

持有认证证书的好处:

1、提升竞争力

面试时企业会将有无证书以及证书的含金量作为一个考量条件,选择持证人员的概率也会更大。

2、获得更高薪水

研究表明,有证书的开发人员比没有证书的开发人员收入更高。企业无法知道无证人员在Python上花了多少时间。但企业可以肯定的是,已经获得证书的人一定是花过很多时间钻研python,才通过认证的。这也使获得Python编程认证的人能在一群应聘者中脱颖而出。而且,很多客户会要求经过认证的专业人员来负责他们的项目。

想了解更多有关python认证证书的详情,推荐咨询达内教育。达内教育致力于面向IT互联网行业,培养软件开发工程师、测试工程师、UI设计师、网络营销工程师、会计等职场人才,目前已在北上海广深等70个大中城市成立了342家学习中心;更是与多家企业签订人才培养协议,全面助力学员更好就业。感兴趣的话点击此处,免费学习一下