Moč Pythona je posledica velikega števila modulov, ki jih ima. Tokrat bomo uporabili enega od njih. Vsak od nas si kdaj zaželi, da bi sporočil (ali spam-.-) svojemu Facebook prijatelju. To je program, ki lahko naredi nekaj podobnega. Torej brez nadaljnjega odlašanja skočimo takoj.
import fbchat from getpass import getpass username = input('Username: ') client = fbchat.Client(username getpass()) no_of_friends = int(raw_input('Number of friends: ')) for i in range(no_of_friends): name = input('Name: ') friends = client.getUsers(name) # return a list of names friend = friends[0] msg = input('Message: ') sent = client.send(friend.uid msg) if sent: print('Message sent successfully!')
Zdaj pa poskusimo korak za korakom razumeti program ...
Zahtevani moduli - fbchat (prenesete ga lahko tukaj: Github povezava ); getpass (običajno je vnaprej nameščen)
Namestitev fbchat:
sudo pip install fbchat
V primeru, da se prikaže napaka: ** poskrbite, da sta nameščena razvojna paketa libxml2 in libxslt **
V Ubuntu lahko pomaga namestitev naslednjih paketov:
kaj dela ravel v pythonu
sudo apt-get install python-dev libxml2-dev libxslt1-dev zlib1g-dev
Razlaga programa: Program lahko razdelimo na več korakov:
1. korak: pridobivanje uporabniških poverilnic
Ta del je zelo enostaven. Uporaba raw_input() in getpass() lahko dobimo uporabniško ime in geslo. Pri tem koraku morate upoštevati nekaj stvari.
primer formata json
- Vaš Facebook račun mora imeti uporabniško ime. To lahko preverite (ali nastavite) v splošnih nastavitvah.
- Za pridobitev gesla ne uporabljamo raw_input, ker takoj, ko so znaki (ali celo dolžina gesla) zunaj, pride do kršitve varnosti.
2. korak: Vnesite ime Facebook prijatelja
Zdaj, ko smo se prijavili, lahko vnesemo število prijateljev, ki jim želimo poslati sporočilo, in za vsakega od teh prijateljev lahko vnesemo sporočilo po meri.
3. korak: pošiljanje neželene pošte *zlobno*
Pozor – nisem odgovoren za obsežno uporabo programa, ki lahko povzroči prepoved dostopa do Facebooka ali blokiranje s strani prijatelja. Pridobite svoj seznam poskusnih prašičkov!
Če iz nekega razloga želite isto sporočilo poslati večkrat, lahko uporabite preprosto zanko for. Nič težkega v tem ;)
Kaj lahko zdaj preizkusite?
python shrani json v datoteko
- Pošljite sporočilo v skupinski klepet.
- Namesto besedila pošljite tudi slike.
- Ustvarite svoj 'namizni' messenger.
Vdor v Facebook - Pošlji a prazno sporočilo
Z običajnim Facebook klepetom ali Messengerjem ni mogoče poslati praznega sporočila, razen če se zavedate alt+0173 trik. Toda s tem programom lahko pošiljate tudi prazna sporočila!! Vse kar morate storiti je, da vnesete prazno sporočilo. Takrat program zahteva pošiljanje sporočila, samo pritisnite enter in voila!! Vaš prijatelj bo prejel niz praznih sporočil ...
Ta nova koda za zdaj dobro deluje:
Python3
import fbchat from getpass import getpass username = input('Username: ') client = fbchat.Client(username getpass()) no_of_friends = int(raw_input('Number of friends: ')) for i in range(no_of_friends): name = input('Name: ') friends = client.searchForUsers(name) # return a list of names friend = friends[0] msg = input('Message: ') sent = client.sendMessage(msg thread_id=friend.uid) if sent: print('Message sent successfully!')
Če imate v mislih še kakšne druge projekte, povezane s tem, ali če ste pripravili nekaj podobnih temu, jih delite v oddelku za komentarje!