Instagram je jednou z nejpopulárnějších sociálních sítí s miliardami uživatelů. Účty na Instagramu má každý, od studentů po celebrity. Veřejná data z Instagramu mohou mít nesmírnou hodnotu pro firmy, obchodníky i jednotlivce. Kdokoli může tato data použít k analýze dat, cílenému marketingu a vytváření statistik.

Python můžete použít k vytvoření automatického nástroje, který extrahuje data Instagramu.

Instalace požadovaných knihoven

Instalátor je knihovna Pythonu, kterou můžete použít k extrahování veřejně dostupných dat z Instagramu. Můžete přistupovat k datům, jako jsou obrázky, videa, uživatelské jméno, ne. příspěvků, počet sledujících, počet sledujících, bio atd. pomocí Installaderu. Upozorňujeme, že Instaloader není žádným způsobem spojen, autorizován, udržován ani podporován Instagramem.

Chcete-li nainstalovat instalační program přes pip, spusťte následující příkaz:

pip Nainstalujte instalační program

Musíš mít pip nainstalovaný ve vašem systému k instalaci externích knihoven Pythonu.

Dále musíte nainstalovat knihovnu Pandas Python. Pandas je knihovna Pythonu, která se používá hlavně k manipulaci s daty a analýze dat. Spusťte následující příkaz a nainstalujte jej:

instagram viewer

pip Nainstalujte pandy

Nyní jste připraveni začít nastavovat kód a načítat data z Instagramu.

Nastavení kódu

Chcete-li nastavit nástroj pro načítání dat Instagramu, musíte importovat knihovnu Instaloader Python a vytvořit instanci třídy Instaloader. Poté musíte poskytnout instagramový popisovač profilu, ze kterého chcete data extrahovat.

Pythonový kód Instagram Extractor je k dispozici v a úložiště GitHub a můžete jej používat zdarma na základě licence MIT.

import instalační program

# Vytvoření instance třídy Installader
bot = instalační program. Installer()

# Načítání profilu z úchytu Instagramu
profil = instalační program. Profile.from_username (bot.context, 'Cristiano')
tisk(profil)

Toto je dobrý první krok ke kontrole základních funkcí. Měli byste vidět některá smysluplná data bez chyb:

Extrahování dat z profilu

Můžete extrahovat cenná veřejně dostupná data, jako je uživatelské jméno, ne. příspěvků, počet sledujících, počet sledujících, životopis, ID uživatele a externí URL pomocí Instaloaderu s několika řádky kódu. Musíte pouze poskytnout instagramový popisovač profilu.

import instalační program
import pandy tak jako pd

# Vytvoření instance třídy Installader
bot = instalační program. Installer()

# Načítání profilu z úchytu Instagramu
profil = instalační program. Profile.from_username (bot.context, 'leomessi')
tisk("uživatelské jméno: ", profil.uživatelské jméno)
tisk("Uživatelské ID: ", profil.uživatelské id)
tisk("Počet příspěvků: ", profil.mediacount)
tisk("Počet sledujících: ", profil.sledující)
tisk("Následující počet: ", profile.followees)
tisk("Bio: ", profil.biografie)
tisk("Externí adresa URL: ", profile.external_url)

Měli byste vidět spoustu informací o profilu z rukojeti, kterou určíte:

Extrahování e-mailů z Bio

E-mailové adresy můžete extrahovat z Insta bio jakéhokoli profilu pomocí regulární výrazy. Musíte importovat Python re knihovny a předat regulární výraz pro ověření e-mailu jako parametr do re.findall() metoda:

import instalační program
import re
# Vytvoření instance třídy Installader
bot = instalační program. Installer()
profil = instalační program. Profile.from_username (bot.context, "bohatství")
tisk("uživatelské jméno: ", profil.uživatelské jméno)
tisk("Bio: ", profil.biografie)
emaily = re.findall (r"\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Z|a-z]{2,}\b", profil.biografie)
print("E-maily byly extrahovány z životopis:")
tisk(e-maily)

Skript vytiskne vše, co v biu rozpozná jako e-mailovou adresu:

Extrahování dat nejlepších výsledků vyhledávání

Když na Instagramu cokoli hledáte, dostanete několik výsledků včetně uživatelských jmen a hashtagů. Nejlepší výsledky vyhledávání můžete extrahovat pomocí get_profiles() a get_hashtags() metody. Potřebujete pouze zadat vyhledávací dotaz v instalační program. TopSearchResults() metoda. Dále můžete jednotlivé výsledky iterovat a tisknout/ukládat.

import instalační program

# Vytvoření instance třídy Installader
bot = instalační program. Installer()

# Zde zadejte vyhledávací dotaz
search_results = instalační program. TopSearchResults (bot.context, 'hudba')

# Iterace přes extrahovaná uživatelská jména
prouživatelské jménovVýsledky vyhledávání.get_profiles():
tisk(uživatelské jméno)

# Iterace přes extrahované hashtagy
prohashtagvVýsledky vyhledávání.get_hashtags():
tisk(hashtag)

Výstup bude obsahovat všechna odpovídající uživatelská jména a hashtagy:

Extrahování sledujících a sledujících z účtu

Pomocí Instaloaderu můžete extrahovat sledující účtu a ty, které sleduje sám. K načtení těchto dat budete muset zadat uživatelské jméno a heslo Instagramu.

Nikdy nepoužívejte své osobní účty k extrahování dat z Instagramu, protože to může váš účet dočasně nebo trvale zablokovat.

Po vytvoření instance třídy Installader musíte zadat své uživatelské jméno a heslo. Je to proto, aby se robot mohl přihlásit k Instagramu pomocí vašeho účtu a načíst údaje o sledujících a sledujících.

Dále musíte poskytnout instagramový popisovač cílového profilu. The get_followers() a get_followees() metody extrahují následovníky a následovníky. Uživatelská jména sledujících a sledujících můžete získat pomocí follower.username a followee.uživatelské jméno vlastnosti resp.

Pokud chcete uložit výsledky do souboru CSV, musíte data nejprve převést do objektu Pandas DataFrame. Použijte pd. DataFrame() metoda pro převod objektu seznamu na DataFrame.

Nakonec můžete exportovat objekt DataFrame do souboru CSV pomocí to_csv() metoda. Musíte projít název_souboru.csv jako parametr této metody získat exportovaná data ve formátu souboru CSV.

Všechny sledující a sledující mohou vidět pouze vlastníci účtu. Pomocí této ani jiné metody nebudete moci extrahovat všechna data sledujících a sledujících.

# Import knihoven
import instalační program
import pandy tak jako pd

# Vytvoření instance třídy Installader
bot = instalační program. Installer()
bot.login (uživatel="Vaše uživatelské jméno", passwd="Vaše heslo")

# Načítání profilu z úchytu Instagramu
profil = instalační program. Profile.from_username (bot.context, 'Your_target_account_insta_handle')

# Získání uživatelských jmen všech sledujících
sledující = [follower.username pro sledujícího v profile.get_followers()]

# Převod dat do DataFrame
followers_df = pd. DataFrame (sledující)

# Uložení výsledků do souboru CSV
followers_df.to_csv('sledující.csv', index=False)

# Získání uživatelských jmen všech následujících
follows = [followee.username pro sledovaného v profile.get_followees()]

# Převod dat do DataFrame
následující_df = pd. DataFrame (následující)

# Uložení výsledků do souboru CSV
follows_df.to_csv('follows.csv', index=False)

Stáhněte si příspěvky z účtu Instagram

Opět platí, že ke stažení příspěvků z jakéhokoli účtu budete muset zadat uživatelské jméno a heslo. Je to proto, aby se robot mohl přihlásit k Instagramu pomocí vašeho účtu. Data všech příspěvků můžete získat pomocí get_posts() metoda. A můžete iterovat a stahovat všechny jednotlivé příspěvky pomocí download_post() metoda.

# Import knihoven
import instalační program
import pandy tak jako pd

# Vytvořte instanci třídy Installader
bot = instalační program. Installer()
bot.login (uživatel="Vaše uživatelské jméno",passwd="Vaše heslo")

# Načítání profilu z úchytu Instagramu
profil = instalační program. Profile.from_username (bot.context, 'Your_target_account_insta_handle')

# Načtení všech příspěvků v objektu
posts = profile.get_posts()

# Iterování a stahování všech jednotlivých příspěvků
pro index, příspěvek ve výčtu (posts, 1):
bot.download_post (post, target=f"{profile.username}_{index}")

Procházení webu pomocí Pythonu

Data scraping neboli web scraping je jedním z nejběžnějších způsobů, jak extrahovat užitečné informace z webu. Získaná data můžete použít pro marketing, tvorbu obsahu nebo rozhodování.

Python je preferovaný jazyk pro škrábání dat. Knihovny jako BeautifulSoup, Scrapy a Pandas zjednodušují extrakci dat, analýzu a vizualizaci.