这篇文章主要介绍了Python实现登录人人网并抓取新鲜事的方法,可实现Python模拟登陆并抓取新鲜事的功能,需要的朋友可以参考下

本文实例讲述了Python实现登录人人网并抓取新鲜事的方法。分享给大家供大家参考。具体如下:

这里演示了Python登录人人网并抓取新鲜事的方法(抓取后的排版不太美观~~)

from sgmllib import SGMLParser

import sys,urllib2,urllib,cookielib

class spider(SGMLParser):

def __init__(self,email,password):

SGMLParser.__init__(self)

self.h3=False

self.h3_is_ready=False

self.div=False

self.h3_and_div=False

self.a=False

self.depth=0

self.names=""

self.dic={}

self.email=email

self.password=password

self.domain='renren.com'

try:

cookie=cookielib.CookieJar()

cookieProc=urllib2.HTTPCookieProcessor(cookie)

except:

raise

else:

opener=urllib2.build_opener(cookieProc)

urllib2.install_opener(opener)

def login(self):

url='http://www.renren.com/PLogin.do'

postdata={

'email':self.email,

'password':self.password,

'domain':self.domain

}

req=urllib2.Request(

url,

urllib.urlencode(postdata)

)

self.file=urllib2.urlopen(req).read()

#print self.file

def start_h3(self,attrs):

self.h3 = True

def end_h3(self):

self.h3=False

self.h3_is_ready=True

def start_a(self,attrs):

if self.h3 or self.div:

self.a=True

def end_a(self):

self.a=False

def start_div(self,attrs):

if self.h3_is_ready == False:

return

if self.div==True:

self.depth += 1

for k,v in attrs:

if k == 'class' and v == 'content':

self.div=True;

self.h3_and_div=True #h3 and div is connected

def end_div(self):

if self.depth == 0:

self.div=False

self.h3_and_div=False

self.h3_is_ready=False

self.names=""

if self.div == True:

self.depth-=1

def handle_data(self,text):

#record the name

if self.h3 and self.a:

self.names+=text

#record says

if self.h3 and (self.a==False):

if not text:pass

else: self.dic.setdefault(self.names,[]).append(text)

return

if self.h3_and_div:

self.dic.setdefault(self.names,[]).append(text)

def show(self):

type = sys.getfilesystemencoding()

for key in self.dic:

print ( (''.join(key)).replace(' ','')).decode('utf-8').encode(type), \

( (''.join(self.dic[key])).replace(' ','')).decode('utf-8').encode(type)

renrenspider=spider('your email','your password')

renrenspider.login()

renrenspider.feed(renrenspider.file)

renrenspider.show()

希望本文所述对大家的Python程序设计有所帮助。

python网络登录脚本_Python实现登录人人网并抓取新鲜事的方法相关推荐

  1. 今日新鲜事python_Python登录人人网并抓取新鲜事

    ``` from sgmllib import SGMLParser import sys,urllib2,urllib,cookielib ''' 遇到不懂的问题?Python学习交流群:82146 ...

  2. python网络爬虫网易云音乐_一篇文章带你用Python网络爬虫实现网易云音乐歌词抓取...

    标签下,如下图所示: 接下来我们利用美丽的汤来获取目标信息,直接上代码,如下图: 此处要注意获取ID的时候需要对link进行切片处理,得到的数字便是歌曲的ID:另外,歌曲名是通过get_text()方 ...

  3. powerbi python词云图_Python 练手项目: 抓取豆瓣陈情令评论,并制作词云图

    一.项目简介 1.内容:循环抓取豆瓣影评中所有观众对<陈情令>的评论,存储在文本文档中,并运用可视化库--词云对其进行分析. 2.目标网站: https://movie.douban.co ...

  4. [Python从零到壹] 四.网络爬虫之入门基础及正则表达式抓取博客案例

    欢迎大家来到"Python从零到壹",在这里我将分享约200篇Python系列文章,带大家一起去学习和玩耍,看看Python这个有趣的世界.所有文章都将结合案例.代码和作者的经验讲 ...

  5. c#使用正则表达式获取TR中的多个TD_[Python从零到壹] 四.网络爬虫之入门基础及正则表达式抓取博客案例...

    首先祝大家中秋节和国庆节快乐,欢迎大家来到"Python从零到壹",在这里我将分享约200篇Python系列文章,带大家一起去学习和玩耍,看看Python这个有趣的世界.所有文章都 ...

  6. Python网络爬虫数据采集实战:Scrapy框架爬取QQ音乐存入MongoDB

    ​    通过前七章的学习,相信大家对整个爬虫有了一个比较全貌的了解 ,其中分别涉及四个案例:静态网页爬取.动态Ajax网页爬取.Selenium浏览器模拟爬取和Fillder今日头条app爬取,基本 ...

  7. python爬虫怎么爬同一个网站的多页数据-如何用Python爬数据?(一)网页抓取

    如何用Python爬数据?(一)网页抓取 你期待已久的Python网络数据爬虫教程来了.本文为你演示如何从网页里找到感兴趣的链接和说明文字,抓取并存储到Excel. 需求 我在公众号后台,经常可以收到 ...

  8. python爬网站数据实例-如何用Python爬数据?(一)网页抓取

    如何用Python爬数据?(一)网页抓取 你期待已久的Python网络数据爬虫教程来了.本文为你演示如何从网页里找到感兴趣的链接和说明文字,抓取并存储到Excel. 需求 我在公众号后台,经常可以收到 ...

  9. 【Android+OkHttp3+Jsoup】 模拟登录教务系统 抓取课表和成绩

    原文链接:https://blog.csdn.net/u013347241/article/details/52711018 今天这篇文章为大家带来的是模拟登录教务系统并抓取课表和成绩的详细实现过程. ...

  10. python爬虫之Ajax动态加载数据抓取--豆瓣电影/腾讯招聘

    动态加载数据抓取-Ajax 特点 1.右键 -> 查看网页源码中没有具体数据 2.滚动鼠标滑轮或其他动作时加载 抓取 1.F12打开控制台,页面动作抓取网络数据包 2.抓取json文件URL地址 ...

最新文章

  1. mobx使用数组提示越界_Mobx-State-Tree-分配给数组类型
  2. 晶振噪声及杂散_如何判断是否需要使用分立式晶振和振荡器呢?
  3. HBase在CentOS上分布集群安装
  4. 【1024创造营】精彩课程回顾
  5. pdfbox 按章节读取_2020年智慧树APP微生物与健康第五单元章节测试网课答案大学课后答案...
  6. mysql grant proxy on_MySQL 5.7权限的介绍
  7. java 工厂模式的写法_java工厂模式三种详解
  8. 北京一Model 3失控冲向公交站台,特斯拉调查后回应......
  9. 苹果CarPlay新功能上线,老司机们更方便了
  10. Javascript in one picture
  11. SQLite:在Julia中判断一个表是否存在数据库中?
  12. CAD中把样条曲线改成多线段
  13. 搜索引擎算法之 Query Analysis
  14. windows server backup功能
  15. 只用div+CSS做淘宝手机端首页
  16. 安卓APP开发之工程构建
  17. 用HTML5+CSS实现3d动画立方体
  18. 4G LTE/EPC UE 的附着与去附着
  19. 2023全国特种作业操作证高处安装、维护、拆除模拟一[安考星]
  20. 如何系统由高效的自学Android,字节大牛如实说道,记住这几个点超越90%的Android开发者

热门文章

  1. 代码粘贴至word后,黑色背景处理
  2. 我的世界Java版种子查询器_种子(世界生成)
  3. WIN7家庭版升级到旗舰版操作
  4. 性别单选框jsp_jsp获取单选按钮的值源码实例
  5. 投稿英文国际会议论文经验总结
  6. java安装后怎么下载forge_我的世界forge怎么安装
  7. 计算机一级考试有填空题嘛,计算机一级考试填空题
  8. 百度竞价的五个基本特征!
  9. Mac上进行session hijack
  10. 适用于开发者的开源分布式即时通讯系统