Пакет Python для Instagram без каких -либо внешних зависимостей


Сосредоточьте информацию пользователей Instagram, публикации данных, хэштегов и данных местоположения. Этот пакет охватывает недавние сообщения пользователя с некоторой информацией, такими как лайки, комментарии, подписи и т. Д. Без внешних зависимостей.
pip install instagramy
pip install instagramy --upgrade
Для входа в Instagram через идентификатор сеанса Instagramy требуется. Имя пользователя или пароль не требуется. Вы должны войти в Instagram через браузер, чтобы получить идентификатор сеанса
Примечание. Часто проверяйте идентификатор сеанса, он может быть изменена в Instagram
Класс InstagramUser Scrape часть информации, связанной с пользователем Instagram
> >> from instagramy import InstagramUser
> >> session_id = "38566737751%3Ah7JpgePGAoLxJe%334"
> >> user = InstagramUser ( 'google' , sessionid = session_id )
> >> user . is_verified
True
> >> user . biography
'Google unfiltered—sometimes with filters.'
> >> user . user_data # More data about user as dictЕсли вы получите данные пользователя Ortime, Instagramy сохраните данные в качестве файла кэша, чтобы избежать ошибки. Вы также можете получить данные из кэша. Не предоставляйте SessionId.
> >> from instagramy import InstagramUser
> >> user = InstagramUser ( 'google' , from_cache = True )
> >> user . is_verified
True Это Opt всех классов InstagramUser , InstagramHashTag и InstagramPost .
InstagramUser.user_data имеет больше данных, кроме определенных как Properties
Класс InstagramHashTag соскребь некоторую информацию, связанную с хеш-битью в Instagram
Вы также можете установить свой SessionId как переменную env
$ export SESSION_ID= " 38566737751%3Ah7JpgePGAoLxJe%er40q " > >> import os
> >> from instagramy import InstagramHashTag
> >> session_id = os . environ . get ( "SESSION_ID" )
> >> tag = InstagramHashtag ( 'google' , sessionid = session_id )
> >> tag . number_of_posts
9556876
> >> tag . tag_data # More data about hashtag as dict InstagramHashTag.tag_data имеет больше данных, кроме определенных как Properties
Класс InstagramPost Scrape часть информации, связанной с конкретным сообщением Instagram. Он принимает идентификатор поста в качестве параметра. Вы можете получить идентификатор сообщения от URL -адреса сообщений в Instagram из собственности InstagramUser.posts . или InstagramHagTag.top_posts
> >> from instagramy import InstagramPost
> >> session_id = "38566737751%3Ah7JpgePGAoLxJe%334"
> >> post = InstagramPost ( 'CLGkNCoJkcM' , sessionid = session_id )
> >> post . author
'ipadpograffiti'
> >> post . number_of_likes
1439
> >> post . post_data # More data about post as dict InstagramPost.post_data имеет больше данных, кроме определенных как Properties
Класс InstagramLocation соскребь некоторую информацию и посты, связанные с данным местоположением. Он принимает идентификатор местоположения и слизняк в качестве параметра. Вы можете получить идентификатор местоположения и слизняк от URL -адреса местоположения Instagram или от свойства InstagramPost.location.id и InstagramPost.location.slug .
> >> from instagramy import InstagramPost
> >> session_id = "38566737751%3Ah7JpgePGAoLxJe%334"
> >> post = InstagramPost ( 'CLGkNCoJkcM' , sessionid = session_id )
> >> location_id , slug = post . location . id , post . location . slug
> >> from Instagramy import InstagramLocation
> >> location = InstagramLocation ( location_id , slug , session_id )
> >> location . latitude
28.6139
> >> location . longitude
77.2089
> >> location . address
{ 'street_address' : 'T2, Indira Gandhi International Airport' , 'zip_code' : '' , 'city_name' : 'New Delhi' , 'region_name' : '' , 'country_code' : 'IN' , 'exact_city_match' : False , 'exact_region_match' : False , 'exact_country_match' : False }Вы также можете получить идентификатор местоположения и слизняк от URL Instagram
https://www.instagram.com/explore/locations/977862530/mrc-nagar
https://www.instagram.com/explore/locations/<location_id>/<slug> InstagramLocation.location_data имеет больше данных, кроме определенных как Properties
Instagramy имеет несколько плагинов для легкого
> >> import pandas as pd
> >> from instagramy . plugins . analysis import analyze_users_popularity
> >> session_id = "38566737751%3Ah7JpgePGAoLxJe%334"
> >> teams = [ "chennaiipl" , "mumbaiindians" ,
"royalchallengersbangalore" , "kkriders" ,
"delhicapitals" , "sunrisershyd" ,
"kxipofficial" ]
> >> data = analyze_users_popularity ( teams , session_id )
> >> pd . DataFrame ( data )
Usernames Followers Following Posts
0 chennaiipl 6189292 194 5646
1 mumbaiindians 6244961 124 12117
2 royalchallengersbangalore 5430018 59 8252
3 kkriders 2204739 68 7991
4 delhicapitals 2097515 75 9522
5 sunrisershyd 2053824 70 6227
6 kxipofficial 1884241 67 7496 > >> import os
> >> from instagramy . plugins . download import *
> >> session_id = os . environ . get ( 'SESSION_ID' )
> >> download_profile_pic ( username = 'google' , sessionid = session_id , filepath = 'google.png' )
> >> download_post ( id = "ipadpograffiti" , sessionid = session_id , filepath = 'post.mp4' )
> >> download_hashtags_posts ( tag = "tamil" , session_id = session_id , count = 2 ) Вы можете использовать этот пакет без входа в систему. SessionId не требуется, но может возникнуть ошибка RedirectionError , после четырех до пяти запросов.
> >> from instagramy import *
> >> user = InstagramUser ( 'google' )
> >> user . fullname
'Google'
> >> tag = InstagramHashTag ( 'python' )
> >> tag . tag_data Из версии 4.3 добавлена новая функция, которая кэширует требуемые данные. Если вы получите данные пользователя Ortime, Instagramy сохраните данные в качестве файла кэша JSON, чтобы избежать ошибки. Вы также можете получить данные из кэша. Не нужно предоставлять SessionId. Вместо SessionId добавьте необязательный параметр from_cache=True .
> >> from instagramy import InstagramUser
> >> user = InstagramUser ( 'google' , from_cache = True )
> >> user . is_verified
True Это OPT всех классов InstagramUser , InstagramHashTag , InstagramPost и InstagramLocation .
Очистить все кэши, созданные Instagramy в текущем режиме
> >> from instagramy . core . cache import clear_caches
> >> clear_caches () # clear all caches of instagramyСписок всех файлов кеша, созданных Instagramy в текущем DIR
> >> from instagramy import list_caches
> >> list_caches () # list all caches of instagramy user = InstagramUser ( 'username' )
email , phone_number = user . user_data [ 'business_email' ], user . user_data [ 'business_phone_number' ]RedirectionError после четырех до пяти запросов.Viewer предоставляет данные о в настоящее время в системе пользователя.InstagramUser.user_data , InstagramPost.post_data , InstagramHashtag.tag_data и InstagramLocation.location_data , который является Python dict , больше и больше данных, кроме определенных как Properties .Если вы отправите огромный запрос в Instagram с идентификатором сеанса Instagram, может вас запретить. Я не отвечаю за какое -либо злоупотребление или ущерб, причиненные этой программой.
MIT Лицензия
Взносы приветствуются. Не стесняйтесь сообщать об ошибках и исправлять некоторые ошибки, создавая запросы на притяжение. Комментарии, предложения, улучшения и усовершенствования всегда приветствуются. Позвольте рассказать об этом здесь.