Skip to main content

Unofficial pinterest api implemented in python 3

Project description

py3-pinterest

Unofficial Pinterest API implemented in python 3 that can do almost all pinterest tasks like comment, pin, repin, follow, unfollow and more. It is implemented by directly calling the pinterest servers, mimicking an actual browser, so you don't need pinterest API key.

If you see any issues, or find bugs feel free to report them here on the github repo.

Install using pip

pip install py3-pinterest

Functionalities

NOTE: for each of the functionalities listed below there is a working example in examples.py.

Create new instance of the API

pinterest = Pinterest(email='your email goes here', password='password goes here', username='look in pinterest url', cred_root='cred root dir')

cred_root is the dir (automatically created if missing) that will store some cookies nad sessions, so you don't need to login before each request. Make sure you specify a path with read/write persmissions.

Login

pinterest.login()

You no longer need to call this manually, 401 errors are handled and login is called internally.

Load profile

user_overview = pinterest.get_user_overview()

Get boards

board_batch = pinterest.boards(username='username')

If username is left blank, current logged in user will be used.

Get board pins

board_pins_batch = pinterest.board_feed(board_id=board_id, board_url=board_url)

Delete pin

pinterest.delete_pin(pin_id='pin_id')

If there is no such pin 404 Not found is thrown If you don't have permissions to delete is 403 Forbidden is thrown.

Follow

pinterest.follow_user(user_id='target_user_id', username='target_username')

Follow limit is 300 per day, after that they might place you on watch list

Unfollow

pinterest.unfollow_user(user_id='target_user_id', username='target_username')

Unfollow limit is 350 per day, after that they might place you on watch list

Get following

following_batch = pinterest.get_following(username='some_user')

If username is not provided current user will be used

Get followers

followers_batch=pinterest.get_user_followers(username='some_user')

If username is not provided current user will be used

Get home feed pins

home_feed_batch = pinterest.home_feed()

Get board recommendations (this is the 'more ideas' api)

rec_batch = pinterest.board_recommendations(board_url=board_url, board_id=board_id)

Repin

pinterest.repin(board_id='board_id', pin_id='pin_id')

Get pinnable images

pinterest.get_pinnable_images(url='https://www.tumblr.com/search/food')

Pin

pinterest.pin(board_id=board_id, image_url=image_url, description=description, title=title)

Search

search_batch = pinterest.search(scope='boards', query='food')

Current pinterest scopes are: pins, buyable_pins, my_pins, videos, users, boards

Follow board

pinterest.follow_board(board_url=board_url, board_id=board_id)

Unfollow board

pinterest.unfollow_board(board_url=board_url, board_id=board_id)

Invite to board

pinterest.invite(board_id=board_id, board_url=board_url, user_id=target_user_id)

Delete board invite

pinterest.delete_invite(board_id=board_id, board_url=board_url, invited_user_id=target_user_id)

Get board invites

invites_batch = pinterest.get_board_invites(board_url=board_url, board_id=board_id)

Comment

pinterest.comment(pin_id=pin_id, text=comment_text)

Delete comment

pinterest.delete_comment(pin_id=pin_id, comment_id=comment_id)

Get Pin comments

pinterest.get_comments(pin_id='pin_id')

Get pin by id

pinterest.load_pin(pin_id='pin_id')

Send perosnal message

pinterest.send_message(conversation_id=conversation_id, pin_id="(pin_id)", message="hey")

Project details


Download files

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

Source Distribution

py3-pinterest-0.3.0.tar.gz (12.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

py3_pinterest-0.3.0-py3-none-any.whl (11.2 kB view details)

Uploaded Python 3

File details

Details for the file py3-pinterest-0.3.0.tar.gz.

File metadata

  • Download URL: py3-pinterest-0.3.0.tar.gz
  • Upload date:
  • Size: 12.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.20.1 setuptools/40.6.2 requests-toolbelt/0.9.1 tqdm/4.33.0 CPython/3.5.2

File hashes

Hashes for py3-pinterest-0.3.0.tar.gz
Algorithm Hash digest
SHA256 b1a5e0846ca4bda994d4b7443dc8d2351953f19947f58171a3490c26be258060
MD5 b19c333fd39ea6dc91eeead05b2debe6
BLAKE2b-256 ecc11063ffe3e85324557c04b27d2e73df1963e81df2d9cf619745822549da59

See more details on using hashes here.

File details

Details for the file py3_pinterest-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: py3_pinterest-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 11.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.20.1 setuptools/40.6.2 requests-toolbelt/0.9.1 tqdm/4.33.0 CPython/3.5.2

File hashes

Hashes for py3_pinterest-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5341bd66e376f6aec72f2ac85fc1a956f7f8313038b4468b22589ab863f7789d
MD5 7b1718762b2edd5ac3bd5123d5354f3b
BLAKE2b-256 3cbd440c075c0f568c291281dc207aee10aa6ac4616c515f45951f1c6676d04a

See more details on using hashes here.

Supported by

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