usr bin env python coding utf8 import httplib urllib2 urllib import re

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
#!/usr/bin/env python
# -*- coding: utf8 -*-
import httplib, urllib2, urllib
import re
import os
import sys
from twyt import twitter
import simplejson as json
#param
url = 'http://vkontakte.ru/'
email = 'sov1et@mail.ru'
id = '2363179'
hash = '191aeb36d776f9437ca61707b56d5882'
#
cooks = 'remixemail='+email+';remixmid='+id+';remixpass='+hash
def get_status(text):
mask_link = ( r';return false;">'
, r'</a><br />'
)
mask = r"(?:"+mask_link[0]+r")(.*)(?:"+mask_link[1]+r")"
parsed= re.compile(mask, re.I)
finish = parsed.findall(text)
return finish[0][0:-1].decode('cp1251')
def get_twit_status():
t = twitter.Twitter()
t.set_auth('Sov1et', 'alavs87')
response = t.status_user_timeline(count=1)
json_objs = json.loads(response)
for json_obj in json_objs:
twit = json_obj['text']
return twit
def get_page(url, post=None, cookies=None, proxy='', timeout=None, referer=None):
#Устанавливаем таймаут
if timeout:
urllib2.socket.setdefaulttimeout(timeout)
#POST данные post = {'key1' : 'value1', 'key2' : 'value2'}
if post != None:
post = urllib.urlencode(post)
#Cookie
#if cookies == None:
# cookies = cookielib.CookieJar() #создаем куки обработчик и кукихранилище в одном лице
#cookie_handler = urllib2.HTTPCookieProcessor(cookies)
#Прокси
#if proxy != None:
# proxy_handler = urllib2.ProxyHandler({'http': proxy})
# opener = urllib2.build_opener(proxy_handler, cookie_handler) #делаем опенер с поддержкой куки и прокси
#else:
opener = urllib2.build_opener() #делаем опенер с поддержкой куки
#Формируем запрос
request = urllib2.Request(url, post) #задаём адресс и строку для поста
request.add_header('Referer', referer) # рефер
request.add_header('User-Agent', 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.10) Gecko/2009042523 Ubuntu/9.04 (jaunty) Firefox/3.0.10') # клиент
request.add_header('Cookie', cookies) # куки
#НЕНУЖНЫЙ ШЛАК
#request.add_header('Accept', 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8')
#request.add_header('Keep-Alive', '300')
#request.add_header('Connection', 'keep-alive')
#request.add_header('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8')
#request.add_header('X-Requested-With', 'XMLHttpRequest') # fzrc
#Запросс пошёл
handle = opener.open(request)
# Читаем данные
data = handle.read()
#Закрывем хэндл
handle.close()
return data
###########################################################################################
#Получаем твиттер статус
status_twitter = get_twit_status()
#Получаем вконтакте статус
content = get_page(url, cookies=cooks)
status_vkontakt = get_status(content)
#Обновляем статус
if if (status_twitter != status_vkontakt) and (status_twitter[0] != '@'):
pos = {'setactivity': status_twitter.encode("utf8"), 'activityhash':'876daef42dfe20321bbf31c2a9447c4d'}
content = get_page(url='http://vkontakte.ru/profile.php', post=pos, cookies=cooks, referer='http://vkontakte.ru/id'+id)