把Email和password改成你的人人账号
#-*- coding:UTF-8 -*- |
02 |
''' |
03 |
====================================== |
04 |
此程序根据 http://www.oschina.net/code/snippet_148170_10661 内容改编 |
05 |
Adapted BY: bepcao |
06 |
Mail:peterc9511@gmail.com |
07 |
====================================== |
08 |
''' |
09 |
from sgmllib import SGMLParser
|
10 |
import sys,urllib2,urllib,cookielib
|
11 |
import datetime
|
12 |
import time
|
13 |
class spider(SGMLParser):
|
14 |
def __init__( self ,email,password):
|
15 |
SGMLParser.__init__( self )
|
16 |
self .h3 = False
|
17 |
self .h3_is_ready = False
|
18 |
self .div = False
|
19 |
self .h3_and_div = False
|
20 |
self .a = False
|
21 |
self .depth = 0
|
22 |
self .names = ""
|
23 |
self .dic = {}
|
24 |
|
25 |
self .email = email
|
26 |
self .password = password
|
27 |
self .domain = 'renren.com'
|
28 |
try :
|
29 |
cookie = cookielib.CookieJar()
|
30 |
cookieProc = urllib2.HTTPCookieProcessor(cookie)
|
31 |
except :
|
32 |
raise
|
33 |
else :
|
34 |
opener = urllib2.build_opener(cookieProc)
|
35 |
urllib2.install_opener(opener)
|
36 |
37 |
def login( self ):
|
38 |
print '开始登录'
|
39 |
url = 'http://www.renren.com/PLogin.do'
|
40 |
postdata = {
|
41 |
'email' : self .email,
|
42 |
'password' : self .password,
|
43 |
'domain' : self .domain
|
44 |
}
|
45 |
req = urllib2.Request(
|
46 |
url,
|
47 |
urllib.urlencode(postdata)
|
48 |
)
|
49 |
|
50 |
self . file = urllib2.urlopen(req).read()
|
51 |
idPos = self . file .index( "'id':'" )
|
52 |
self . id = self . file [idPos + 6 :idPos + 15 ]
|
53 |
tokPos = self . file .index( "get_check:'" )
|
54 |
self .tok = self . file [tokPos + 11 :tokPos + 21 ]
|
55 |
rtkPos = self . file .index( "get_check_x:'" )
|
56 |
self .rtk = self . file [rtkPos + 13 :rtkPos + 21 ]
|
57 |
|
58 |
59 |
60 |
def publish( self ,content):
|
61 |
url1 = 'http://shell.renren.com/' + self . id + '/status'
|
62 |
postdata = {
|
63 |
'content' :content,
|
64 |
'hostid' : self . id ,
|
65 |
'requestToken' : self .tok,
|
66 |
'_rtk' : self .rtk,
|
67 |
'channel' : 'renren' ,
|
68 |
}
|
69 |
req1 = urllib2.Request(
|
70 |
url1,
|
71 |
urllib.urlencode(postdata)
|
72 |
)
|
73 |
self .file1 = urllib2.urlopen(req1).read()
|
74 |
print '%s:\n刚才使用你的人人账号 %s 发了一条状态\n内容为:(%s)' % (datetime.datetime.now(), self .email,postdata.get( 'content' ,''))
|
75 |
76 |
77 |
78 |
renrenspider = spider( 'Email' , 'Password' )
|
79 |
renrenspider.login() |
80 |
content = raw_input ( '请输入状态的内容:' )
|
81 |
renrenspider.publish(content) |
相关推荐
Python中的有限状态机库——`transitions`是一个强大的工具,用于在对象之间管理状态转换。这个库使得在Python代码中实现复杂的状态逻辑变得简洁而直观。`transitions`库不仅适用于简单的状态切换,还能处理条件触发...
本话题主要探讨如何使用Python来模拟浏览器登录网站,从而获取自定义数据。这一过程涉及到的知识点主要包括Python的基础语法、HTTP请求、Cookie管理以及可能的验证码识别。 首先,Python的基础语法是实现登录的前提...
本文实例讲述了Python实现登录人人网并抓取新鲜事的方法。分享给大家供大家参考。具体如下: 这里演示了Python登录人人网并抓取新鲜事的方法(抓取后的排版不太美观~~) from sgmllib import SGMLParser import sys...
基于python的人体状态识别是指使用python语言实现的人体状态识别系统,该系统可以实时显示识别的结果,具有广泛的应用前景。本文将围绕基于python的人体状态识别,讲解相关的知识点。 1. OpenCV库的应用 OpenCV是...
本示例中,我们探讨的主题是如何使用Python进行登录购票网站的操作。这通常涉及到网络请求、数据解析以及模拟用户行为等关键技术。 首先,从文件`denglu12306.py`来看,这可能是实现登录功能的主要代码文件。在这样...
代码仅供参考学习~代码仅供参考学习~代码仅供参考学习~代码仅供参考学习~代码仅供参考学习~人人网自动登录人人网自动登录是指通过爬虫脚本模拟用户在人人网上进行自动登录,以方便执行需要登录权限的操作,如发表...
使用python读取mysql数据库使用python读取mysql数据库使用python读取mysql数据库使用python读取mysql数据库使用python读取mysql数据库使用python读取mysql数据库使用python读取mysql数据库使用python读取mysql数据库...
这段代码展示了如何使用Python构建一个基于多线程的网络爬虫,它能够登录人人网,爬取用户信息,并分析用户的社交网络。通过对HTTP请求的精细控制、HTML内容的解析,以及多线程并发执行的策略,实现了高效的网络数据...
Python 使用Python控制摄像头拍照 Python源码Python 使用Python控制摄像头拍照 Python源码Python 使用Python控制摄像头拍照 Python源码Python 使用Python控制摄像头拍照 Python源码Python 使用Python控制摄像头拍照 ...
使用Python分析图片验证码并登录
本篇将详细探讨如何使用Python进行自动登录,以"人人网"为例。 首先,自动登录的基本流程包括以下几个步骤: 1. **发送请求**:模拟浏览器向服务器发送登录请求,通常以POST方式提交用户名和密码。 2. **处理...
为了监控 NAS主机的运行状态, 以流量和CPU温度为主.应该可运行所有linux环境. 参考网上资料整理代码 , 供参考. 监控 CPU 温度, 内存使用量MB, CPU单核使用率(此项不太准), 网络流入差量KB , 流出差量KB, 运行时间...
### Python爬虫使用Cookie登录详解 #### 前言 在进行网络爬虫开发时,经常会遇到需要登录后才能访问的网页。此时,利用Cookie机制能够有效地帮助爬虫完成登录并抓取数据。本文将详细介绍如何使用Python的`urllib`库...
获得人人网网站上的好友列表的爬虫代码,可以分析人人网上每个人的好友信息,以便画社交网络图来进一步分析
通过python实现与三菱PLC通讯,读取/写入,并使用tkinter界面化,还使用matplotlib做了动态折线图。软件初衷是监控PLC设备,所以没有写入操作,单工具类中已包含写入操作,需要的话可以自行添加,工具类是...
它利用Python的网络编程能力,持续检查网络连接状态,并在断线时自动尝试重新连接,为用户提供了便捷的网络服务保障。 Python作为一门高级编程语言,以其简洁易读的语法和强大的库支持而受到广大开发者的喜爱。在...
python使用requests模拟登录带验证码的专利网站demo
Python利用SNMP读取交换机端口信息及状态,通过路由器和交换机上启用SNMP协议,Python环境下安装net-snmp-python包实现
代码仅供参考学习~代码仅供参考学习~代码仅供参考学习~代码仅供参考学习~代码仅供参考学习~天眼查模拟登录天眼查...2. 实现目标:使用Python编写爬虫脚本,模拟用户在天眼查网站上进行自动登录,获取登录后的页面信息
标题中的"Python3+PhantomJS登陆网站"指的是使用Python3编程语言结合PhantomJS工具来实现自动登录网站的功能。PhantomJS是一个无头浏览器,它允许开发者在没有图形用户界面的情况下运行JavaScript,这对于自动化任务...