Force install CPAN module

Обычно для установки модуля CPAN достаточно написать "cpan ИмяМодуля" и чуть-чуть подождать. Однако, если модуль не проходит свои же тесты, он не установится. Но всё же он нужен...

more

Пробуем Play Framework 2.*

Выдалась свободная пара недель - решил таки попробовать что-то, выходящее за мою зону комфорта, но всё же технологически близкое.

more

Командировка в Киев

С 3-го по 5-ое отдыхал^W работал в Киеве - компания у нас распределённая, есть отделение в Киеве...

more

Мой SQL

Неделю назад провёл семинар по MySQL. Событие не ахти какое, но всё же решил записать на будущее.

more

Clear Facebook share cache with Python

import sys
import requests

FB_GRAPH_URL = 'https://graph.facebook.com'
FB_AUTH_URL = 'https://graph.facebook.com/oauth/access_token'


def get_fb_access_token(api_key, api_secret):
    resp = requests.get(FB_AUTH_URL, params={
        "type": "client_cred",
        "client_id": api_key,
        "client_secret": api_secret
    })
    _, val = resp.text.split('=')
    return val


def flush_fb_cache(token, url):
    resp = requests.post(FB_GRAPH_URL, data={
        'id': url,
        'scrape': 'true',
        'max': 500,
        'access_token': token
    })
    
    return resp.ok


if __name__ == '__main__':
    if len(sys.argv) < 2:
        print """
        USAGE: python flushfb.py http://example.com/path/to/page/
        """
    else:
        token = get_fb_access_token(FB_API_KEY, FB_API_SECRET)
        status = flush_fb_cache(token, sys.argv[1])
        
        if status:
            print "[+] FB cache flushed for %s" % url
        else:
            print "[-] Can't flush %s" % url

more