Skip to main content

Client library for Wykop API

Project description

https://badge.fury.io/py/wykop-sdk.png

Biblioteka ta jest implementacją Wykop API w Python.

Przykładowe użycie:

import wykop

api = wykop.WykopAPI(klucz_aplikacji, sekret_aplikacji)
profile = api.get_profile("m__b")

Uwierzytelnienie

Aby wykonywać działania jako użytkownik zalogowany przed wykonaniem metody należy się uwierzytenić.

Przykładowe użycie metody wymagającej uwierzytelnienia:

import wykop

api = wykop.WykopAPI(klucz_aplikacji, sekret_aplikacji)
api.authenticate(login, klucz_polaczenia)
profile = api.observe_profile("m__b")

Instalacja

Zalecana jest instalacja wykop-sdk poprzez pip:

$ pip install wykop-sdk

Alternatywnie możesz pobrać kod i zainstalować bezpośrednio z repozytorium:

$ pip install -e git+https://github.com/p1c2u/wykop-sdk.git#egg=wykop-sdk

Zdefiniowane metody

Biblioteka posiada wbudowane metody odpowiednie do zdefiniowanych w Wykop API

Metoda API

Metoda SDK

Comments

Add

add_comment

Plus

plus_comment

Minus

minus_comment

Edit

edit_comment

Delete

delete_comment

Link

Index

get_link

Dig

dig_link

Cancel

cancel_link

Bury

bury_link

Comments

get_link_comments

Reports

get_link_reports

Digs

get_link_digs

Related

get_link_related

Buryreasons

get_link_buryreasons

Observe

observe_link

Favorite

favorite_link

Links

Promoted

get_links_promoted

Upcoming

get_links_upcoming

MyWykop

Index

get_mywykop

Tags

get_mywykop_tags

Users

get_mywykop_users

Notifications

get_notifications

NotificationsCount

get_notifications_count

ReadNotifications

mark_as_read_notifications

Popular

Promoted

get_popular_promoted

Upcoming

get_popular_upcoming

Profile

Index

get_profile

Added

get_profile_links

Published

get_profile_published

Commented

get_profile_commented

Digged

get_profile_digged

Buried

get_profile_buried

Observe

observe_profile

Unobserve

unobserve_profile

Followers

get_profile_followers

Followed

get_profile_followed

Favorites

get_profile_favorites

Search

Index

search

Links

search_links

Entries

search_entries

Profiles

search_profiles

User

Login

user_login

Favorites

user_favorites

Observed

user_observed

Top

Index

get_top

Date

get_top_date

Related

Plus

plus_related

Minus

minus_related

Add

add_related

Entries

Index

get_entry

Add

add_entry

Edit

edit_entry

Delete

delete_entry

AddComment

add_entry_comment

EditComment

edit_entry_comment

DeleteComment

delete_entry_comment

Vote

vote_entry / vote_entry_comment

Unvote

unvote_entry / unvote_entry_comment

Rank

Index

get_rank

Observatory

Votes

get_observatory_votes

Comments

get_observatory_comments

Entries

get_observatory_entries

EntriesComments

get_observatory_entres_comments

Favorites

Index

get_favorites

Lists

get_favorites_lists

Stream

Index

get_stream

Hot

get_stream_hot

Tag

Index

tag

PM

ConversationsList

get_conversations_list

Conversation

get_conversation

SendMessage

send_message

DeleteConversation

delete_conversation

Proste żądania

Można również skorzystać z podstawowej metody do tworzenia żądań. Przykład z dokumentacji Wykop API będzie przedstawiał się następująco:

link = api.request("link", 'index', [54321,], {"appkey": 12345})

gdzie:

‘link’

typ zasobu

‘index’

metoda zasobu

[54321,]

lista parametrów metody

{“appkey”: 12345}

parametry API

Wykop Connect

Możliwe jest też łączenie konta użytkownika z aplikacją

Generowanie linku do Wykop Connect

url = api.get_connect_url("http://hostname.pl")

Dekodowanie danych Wykop Connect

appkey, login, token = api.get_connect_data(encoded_data)

Odpowiedzi

Wyróżniamy 3 typy odpowiedzi:

  • logiczny, np. metoda observe_profile:

    >>> print api.observe_profile("m__b")
    [True]
  • obiekt, np. metoda get_profile:

    >>> print api.get_profile("m__b")
    {'author_group': 5, 'buries': None, 'rank': 274, 'links_published': 41, 'gg': '', 'groups': 2, 'entries': 203, .. }
  • lista obiektów, np. metoda get_link_digs

    >> print api.get_link_digs(12345)
    [{'author_group': 2, 'author_sex': 'male', .. }, {'author_group': 2, 'author_sex': 'male', .. }]

Każdy obiekt z odpowiedzi jest typu słownikowego (dict) z możliwością dostępu do właściwości poprzez artybuty:

>> profile = api.get_profile("m__b")
>> profile["diggs"]
12155
>> profile.diggs
12155

Filtrowanie odpowiedzi

Aby odfiltrować z odpowiedzi kod HTML, należy wywołać klasę z parametrem output=’clear’

import wykop

api = wykop.WykopAPI(klucz_aplikacji, sekret_aplikacji, output='clear')
api.authenticate(login, klucz_polaczenia)
profile = api.observe_profile("m__b")

Zgłaszanie błędów

Jeżeli znalazłeś jakieś błędy lub masz inny problem zgłoś go na bugtracker lub na mirko @tenji :>

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

wykop-sdk-0.3.1.zip (31.7 kB view hashes)

Uploaded Source

wykop-sdk-0.3.1.tar.gz (20.5 kB view hashes)

Uploaded Source

Built Distributions

wykop_sdk-0.3.1-py3.4.egg (32.6 kB view hashes)

Uploaded Source

wykop_sdk-0.3.1-py3-none-any.whl (17.0 kB view hashes)

Uploaded Python 3

wykop_sdk-0.3.1-py2.7.egg (30.7 kB view hashes)

Uploaded Source

wykop_sdk-0.3.1-py2-none-any.whl (17.0 kB view hashes)

Uploaded Python 2

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page