爬虫实例4――发微博

这个爬虫可以实现模拟登录新浪微博并发微博,该脚本的密码模块只有在Windows的命令行和Linux终端下才会起作用。

# -*- coding: utf-8 -*-
import getpass
import requests
from lxml import etree

print 'Welcome to use python to send a weibo!'
print '-' * 38
username = raw_input('Username: ')
password = getpass.getpass('Password: ')
s = requests.session()
url = 'http://login.weibo.cn/login/?ns=1&revalid=2&backURL=http%3A%2F%2Fweibo.cn%2F&backTitle=%CE%A2%B2%A9&vt='
html = s.get(url).content
selector = etree.HTML(html)
pw = selector.xpath('//input[@type="password"]/@name')[0]
vk = selector.xpath('//input[@name="vk"]/@value')[0]
data = {
    'mobile': username,
    pw: password,
    'remember': 'on',
    'backURL': 'http%3A%2F%2Fweibo.cn%2F',
    'backTitle': u'微博',
    'tryCount': '',
    'vk': vk,
    'submit': u'登录'
}
html = s.post(url, data).content
selector = etree.HTML(html)
url = 'http://weibo.cn' + selector.xpath('/html/body/div[4]/form/@action')[0]
content = raw_input('Content: ')
data = {
    'rl': 0,
    'content': content
}
s.post(url, data)


你可能感兴趣的:(爬虫,微博)