python 应用人人网

一 python人人登陆

代码如下,参考了网上的:

import re 
import urllib 
import urllib2 
import cookielib 
import datetime
import time
from urllib2 import URLError,HTTPError
#第一个参数为日志文件,第二个参数为用户名,第三个参数为密码
def renren_login(logfile,username,password):
    logfile.write(str(datetime.datetime.now()) + ' renren/r/n')
    cj = cookielib.CookieJar()
    post_data = urllib.urlencode(
        {'email':username,
         'password':password,
        }
        )
    path = 'http://www.renren.com/PLogin.do'
    opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))
    urllib2.install_opener(opener)
    req = urllib2.Request(path,post_data)
    
    try:
        conn = urllib2.urlopen(req)
    except URLError,e:
        print 'URLError'
        logfile.write('URLError:' + str(e.code) + '/r/n')#http://www.renren.com/SysHome.do
        return False
    except HTTPError,e:    
        logfile.write('HTTP Error:'+e.reason + '/r/n')
        return False
    if conn.geturl() == 'http://www.renren.com/home':
        print 'success'
        logfile.write('Task finished/r/n')
        return conn.read()
    else:
        print 'Task Failed'
        logfile.write('Task failed/r/n')
# 登录成功,返回整个页面的代码       
file_object  = open("log.txt",'w')        
login_index = renren_login(file_object,'xxxxxx','xxxx')

二 python人人自动登陆,并访问最近来访者

##-*- coding : gbk -*-
#在
import os
from xml.dom import minidom  
import re 
import urllib 
import urllib2 
import cookielib 
import datetime
import time
from urllib2 import URLError,HTTPError
#登录模块 在网上找的
def renren_login(logfile,username,password):
    logfile.write(str(datetime.datetime.now()) + ' renren/r/n')
    cj = cookielib.CookieJar()
    post_data = urllib.urlencode(
        {'email':username,
         'password':password,
        }
        )
    path = 'http://www.renren.com/PLogin.do'
    opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))
    urllib2.install_opener(opener)
    req = urllib2.Request(path,post_data)
    
    try:
        conn = urllib2.urlopen(req)
    except URLError,e:
        print 'URLError'
        logfile.write('URLError:' + str(e.code) + '/r/n')
        return False
    except HTTPError,e:    
        logfile.write('HTTP Error:'+e.reason + '/r/n')
        return False
    if conn.geturl() == 'http://www.renren.com/home':
        print 'success'
        logfile.write('Task finished/r/n')
        open('login_renren.html','w').write(conn.read())
        return conn.read()
    else:
        print 'Task Failed'
        logfile.write('Task failed/r/n')
#生成的登录日志文件        
file_object  = open("log.txt",'w')        
login_index = renren_login(file_object,'用户名','密码') #这地方换成登录的用户名和密码 


#parse 解析网页
r1 = re.compile('''http://www.renren.com/profile.do\?portal=homeFootprint&ref=home_footprint&id=\d{9}''')
li = r1.findall(open("login_renren.html","r").read())
<div class="dp-highlighter bg_python"><div class="bar"><div class="tools"><b>[python]</b> <a href="#" class="ViewSource" title="view plain" onclick="dp.sh.Toolbar.Command('ViewSource',this);return false;">view plain</a><a href="#" class="CopyToClipboard" title="copy" onclick="dp.sh.Toolbar.Command('CopyToClipboard',this);return false;">copy</a><a href="#" class="PrintSource" title="print" onclick="dp.sh.Toolbar.Command('PrintSource',this);return false;">print</a><a href="#" class="About" title="?" onclick="dp.sh.Toolbar.Command('About',this);return false;">?</a><div style="position: absolute; left: 0px; top: 0px; width: 0px; height: 0px; z-index: 99; "><embed id="ZeroClipboardMovie_2" src="http://static.blog.csdn.net/scripts/ZeroClipboard/ZeroClipboard.swf" loop="false" menu="false" quality="best" bgcolor="#ffffff" width="0" height="0" name="ZeroClipboardMovie_2" align="middle" allowscriptaccess="always" allowfullscreen="false" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" flashvars="id=2&width=0&height=0" wmode="transparent"></div></div></div><ol start="1" class="dp-py"><li class="alt"><span><span class="comment">#将解析到的最近来访的地址放入字典中</span><span>  </span></span></li></ol></div><pre name="code" class="python" style="display: none; ">#将解析到的最近来访的地址放入字典中</pre>url_dict ={}for item in li: print item url_dict.setdefault(item)<p></p>
<pre></pre>
<div class="dp-highlighter bg_python"><div class="bar"><div class="tools"><b>[python]</b> <a href="#" class="ViewSource" title="view plain" onclick="dp.sh.Toolbar.Command('ViewSource',this);return false;">view plain</a><a href="#" class="CopyToClipboard" title="copy" onclick="dp.sh.Toolbar.Command('CopyToClipboard',this);return false;">copy</a><a href="#" class="PrintSource" title="print" onclick="dp.sh.Toolbar.Command('PrintSource',this);return false;">print</a><a href="#" class="About" title="?" onclick="dp.sh.Toolbar.Command('About',this);return false;">?</a><div style="position: absolute; left: 0px; top: 0px; width: 0px; height: 0px; z-index: 99; "><embed id="ZeroClipboardMovie_3" src="http://static.blog.csdn.net/scripts/ZeroClipboard/ZeroClipboard.swf" loop="false" menu="false" quality="best" bgcolor="#ffffff" width="0" height="0" name="ZeroClipboardMovie_3" align="middle" allowscriptaccess="always" allowfullscreen="false" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" flashvars="id=3&width=0&height=0" wmode="transparent"></div></div></div><ol start="1" class="dp-py"><li class="alt"><span><span>  </span></span></li></ol></div><pre name="code" class="python" style="display: none; "></pre><div class="dp-highlighter bg_python"><div class="bar"><div class="tools"><b>[python]</b> <a href="#" class="ViewSource" title="view plain" onclick="dp.sh.Toolbar.Command('ViewSource',this);return false;">view plain</a><a href="#" class="CopyToClipboard" title="copy" onclick="dp.sh.Toolbar.Command('CopyToClipboard',this);return false;">copy</a><a href="#" class="PrintSource" title="print" onclick="dp.sh.Toolbar.Command('PrintSource',this);return false;">print</a><a href="#" class="About" title="?" onclick="dp.sh.Toolbar.Command('About',this);return false;">?</a><div style="position: absolute; left: 0px; top: 0px; width: 0px; height: 0px; z-index: 99; "><embed id="ZeroClipboardMovie_4" src="http://static.blog.csdn.net/scripts/ZeroClipboard/ZeroClipboard.swf" loop="false" menu="false" quality="best" bgcolor="#ffffff" width="0" height="0" name="ZeroClipboardMovie_4" align="middle" allowscriptaccess="always" allowfullscreen="false" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" flashvars="id=4&width=0&height=0" wmode="transparent"></div></div></div><ol start="1" class="dp-py"><li class="alt"><span><span><span style=</span><span class="string">"font-family: monospace; white-space: pre; background-color: rgb(240, 240, 240); "</span><span>></span><pre name=</span><span class="string">"code"</span><span> </span><span class="keyword">class</span><span>=</span><span class="string">"python"</span><span>></span><span class="comment">#访问最近来访者</pre>for item in url_dict.iterkeys(): os.startfile(item)</span><span>  </span></span></li><li class=""><span><pre></pre>  </span></li><li class="alt"><span><br>  </span></li><li class=""><span><br>  </span></li><li class="alt"><span><p></p>  </span></li></ol></div><pre name="code" class="python" style="display: none; "><span style="font-family: monospace; white-space: pre; background-color: rgb(240, 240, 240); "></span><div class="dp-highlighter bg_python"><div class="bar"><div class="tools"><b>[python]</b> <a href="#" class="ViewSource" title="view plain" onclick="dp.sh.Toolbar.Command('ViewSource',this);return false;">view plain</a><a href="#" class="CopyToClipboard" title="copy" onclick="dp.sh.Toolbar.Command('CopyToClipboard',this);return false;">copy</a><a href="#" class="PrintSource" title="print" onclick="dp.sh.Toolbar.Command('PrintSource',this);return false;">print</a><a href="#" class="About" title="?" onclick="dp.sh.Toolbar.Command('About',this);return false;">?</a><div style="position: absolute; left: 0px; top: 0px; width: 0px; height: 0px; z-index: 99; "><embed id="ZeroClipboardMovie_5" src="http://static.blog.csdn.net/scripts/ZeroClipboard/ZeroClipboard.swf" loop="false" menu="false" quality="best" bgcolor="#ffffff" width="0" height="0" name="ZeroClipboardMovie_5" align="middle" allowscriptaccess="always" allowfullscreen="false" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" flashvars="id=5&width=0&height=0" wmode="transparent"></div></div></div><ol start="1" class="dp-py"><li class="alt"><span><span class="comment">#访问最近来访者</span><span>  </span></span></li></ol></div><pre name="code" class="python" style="display: none; ">#访问最近来访者</pre>for item in url_dict.iterkeys(): os.startfile(item)
<pre></pre>
<br>
<br>
<p></p>

</pre>


  1. ##-*- coding : gbk -*-  
  2. #在  
  3. import os  
  4. from xml.dom import minidom    
  5. import re   
  6. import urllib   
  7. import urllib2   
  8. import cookielib   
  9. import datetime  
  10. import time  
  11. from urllib2 import URLError,HTTPError  
  12. #登录模块 在网上找的  
  13. def renren_login(logfile,username,password):  
  14.     logfile.write(str(datetime.datetime.now()) + ' renren/r/n')  
  15.     cj = cookielib.CookieJar()  
  16.     post_data = urllib.urlencode(  
  17.         {'email':username,  
  18.          'password':password,  
  19.         }  
  20.         )  
  21.     path = 'http://www.renren.com/PLogin.do'  
  22.     opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))  
  23.     urllib2.install_opener(opener)  
  24.     req = urllib2.Request(path,post_data)  
  25.       
  26.     try:  
  27.         conn = urllib2.urlopen(req)  
  28.     except URLError,e:  
  29.         print 'URLError'  
  30.         logfile.write('URLError:' + str(e.code) + '/r/n')  
  31.         return False  
  32.     except HTTPError,e:      
  33.         logfile.write('HTTP Error:'+e.reason + '/r/n')  
  34.         return False  
  35.     if conn.geturl() == 'http://www.renren.com/home':  
  36.         print 'success'  
  37.         logfile.write('Task finished/r/n')  
  38.         open('login_renren.html','w').write(conn.read())  
  39.         return conn.read()  
  40.     else:  
  41.         print 'Task Failed'  
  42.         logfile.write('Task failed/r/n')  
  43. #生成的登录日志文件          
  44. file_object  = open("log.txt",'w')          
  45. login_index = renren_login(file_object,'用户名','密码') #这地方换成登录的用户名和密码   
  46.   
  47.   
  48. #parse 解析网页  
  49. r1 = re.compile('''''http://www.renren.com/profile.do\?portal=homeFootprint&ref=home_footprint&id=\d{9}''')  
  50. li = r1.findall(open("login_renren.html","r").read())  
  51. <pre name="code" class="python">#将解析到的最近来访的地址放入字典中</pre>url_dict ={}for item in li: print item url_dict.setdefault(item)<p></p>  
  52. <pre></pre>  
  53. <pre name="code" class="python"></pre><pre name="code" class="python"><span style="font-family: monospace; white-space: pre; background-color: rgb(240, 240, 240); "></span><pre name="code" class="python">#访问最近来访者</pre>for item in url_dict.iterkeys(): os.startfile(item)  
  54. <pre></pre>  
  55. <br>  
  56. <br>  
  57. <p></p>  
  58.   
  59. </pre>  


你可能感兴趣的:(python 应用人人网)