Pacote Python para Instagram sem dependências externas


Raspe informações dos usuários do Instagram, publica dados, hashtags e dados de locais. Este pacote elimina as postagens recentes do usuário com algumas informações, como curtidas, comentários, legendas e etc. Sem dependências externas.
pip install instagramy
pip install instagramy --upgrade
Para fazer login no Instagram via ID do Instagramy, é necessário. Nenhum nome de usuário ou senha é necessário. Você deve estar login no Instagram via navegador para obter o ID da sessão
NOTA: Verifique o ID da sessão com frequência, ele pode ser alterado pelo Instagram
Classe InstagramUser raspa algumas das informações relacionadas ao usuário do 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 dictSe você obtiver os dados do usuário ONETime, o Instagramy armazenar os dados como arquivo de cache para evitar o erro. Você também pode obter os dados do cache. Não forneça o SessionID.
> >> from instagramy import InstagramUser
> >> user = InstagramUser ( 'google' , from_cache = True )
> >> user . is_verified
True É optado por todas as classes InstagramUser , InstagramHashTag e InstagramPost .
InstagramUser.user_data tem mais dados que não são definidos como Properties
Classe InstagramHashTag Raspe algumas das informações relacionadas ao hash-tag do Instagram
você também pode definir sua sessionID como variável 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 tem mais dados que não são definidos como Properties
Classe InstagramPost Raspe algumas das informações relacionadas ao post específico do Instagram. Ele toma o ID post como o parâmetro. Você pode obter o ID post do URL das postagens do Instagram da propriedade do InstagramUser.posts . ou 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 tem mais dados que não são definidos como Properties
Classe InstagramLocation raspa algumas das informações e postagens relacionadas ao local fornecido. Ele toma o ID do local e a lesma como parâmetro. Você pode obter o ID do local e a lesma do URL do local do Instagram ou da propriedade do InstagramPost.location.id e 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 }Você também pode obter o ID do local e a lesma do URL do Instagram
https://www.instagram.com/explore/locations/977862530/mrc-nagar
https://www.instagram.com/explore/locations/<location_id>/<slug> InstagramLocation.location_data tem mais dados que não são definidos como Properties
Instagramy tem alguns plugins para facilitar
> >> 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 ) Você pode usar este pacote sem login. SessionID não é necessário, mas pode aumentar o erro RedirectionError após quatro a cinco solicitações.
> >> from instagramy import *
> >> user = InstagramUser ( 'google' )
> >> user . fullname
'Google'
> >> tag = InstagramHashTag ( 'python' )
> >> tag . tag_data Na versão 4.3 , adicionou o novo recurso que está armazenando em cache os dados necessários. Se você obtiver os dados do usuário ONETime, o Instagramy armazenará os dados como arquivo json cache para evitar o erro. Você também pode obter os dados do cache. Não precisa fornecer o SessionID. Em vez de sessionID, adicione o parâmetro opcional from_cache=True .
> >> from instagramy import InstagramUser
> >> user = InstagramUser ( 'google' , from_cache = True )
> >> user . is_verified
True É optado por todas as classes InstagramUser , InstagramHashTag , InstagramPost e InstagramLocation .
Limpe todos os caches criados pelo Instagramy no DIR atual por
> >> from instagramy . core . cache import clear_caches
> >> clear_caches () # clear all caches of instagramyLista de todos os arquivos de cache criados pelo Instagramy no diretor atual
> >> 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 após quatro a cinco solicitações.Viewer de classe fornece os dados sobre o usuário logado atualmente.InstagramUser.user_data , InstagramPost.post_data , InstagramHashtag.tag_data e InstagramLocation.location_data , que é o Python dict , tem cada vez mais dados do que definidos como Properties .Se você enviar a enorme solicitação para o Instagram com o ID da sessão Instagram poderá proibi -lo. Não sou responsável por qualquer uso indevido ou dano causado por este programa.
MIT Licença
Contribuições são bem -vindas. Sinta -se à vontade para relatar bugs em edição e corrigir alguns bugs criando solicitações de tração. Comentários, sugestões, melhorias e aprimoramentos são sempre bem -vindos. Deixe se dissipar aqui.