AdsPower
AdsPower

Paano i-scrape ang Instagram? 3 Paraan para Sulitin ang Iyong mga Pagsisikap sa Pag-scrap

By AdsPower||7,667 Views

Tingnan ang Mabilis

Use the simple, legal methods in this article to scrape Instagram data and boost your marketing. Stay undetected with AdsPower's antidetect features—start now!

With over 1.3 billion users, Instagram is a goldmine of valuable data for businesses to use for market research, lead generation, and performance monitoring. But scraping Instagram to get this data is the tricky part.

The procedure is not straightforward and has a lot of complexities either due to Instagram policies or technical ambiguities.

This guide answers how to scrape Instagram by introducing three ways involving low and heavy code methods and a no-code method.

Legal ba ang Instagram Scraping?

Ang sagot sa tanong na "Legal ba ang pag-scrap ng Instagram?" ay oo at hindi sa parehong oras, dahil ito ay bumababa sa uri ng data na iyong kinukuskos. Kung gusto mong i-scrape ang Instagram para sa Publicly available na data, ang sagot ay oo.

Ngunit kung nag-scrap ka sa Instagram para sa pribadong data na nangangailangan ng pag-login sa Instagram, tahasang ipinagbabawal iyon at maaari kang masuspinde ng account at sa pinakamasamang kaso, legal na aksyon. Ngunit kahit para sa Pampublikong data, dapat mong tiyakin ang isang legal na paraan ng pag-scrape.

Upang i-scrape ang Instagram para sa legal na data maaari mong gamitin ang mga API na ibinigay ng Instagram. Kabilang dito ang Instagram Graph API at Instagram Basic Display API.

Hinahayaan ka ng Graph API na pamahalaan at kunin ang data tungkol sa mga account ng negosyo at tagalikha. Samantalang ang Basic Display API ay nagbibigay sa iyo ng read-only na access sa pangunahing impormasyon ng user. Parehong sumusunod ang mga API na ito sa mga patakaran ng Instagram tungkol sa pag-scrape kaya ang pag-scrap sa Instagram gamit ang mga ito ay ganap na legal.

Gayunpaman, kung gumagamit ka ng di-pampubliko API o illicit ay nangangahulugang na na-access ang platform nang walang naunang pahintulot at madalas di i-sguise ang scraper upang lumilitaw bilang isang ordinaryong user, pagkatapos th sa falls sa ilalim ng hindi awtorisadong pag-scrape at labag sa Instagram Mga Tuntunin ng >

Service. style="line-height: 2;">Kaya bago mo simulan ang pag-scrape ng Instagram, umatras at isipin ang iyong sarili na "Pinapayagan ba ng Instagram ang pag-scrape" at siguraduhing maingat kang humahakbang habang ginagawa ito.

Aling Instagram Data Maaaring Madaling Madaling Kuskusin?

Bago ipakita mo kung paano mag-scrape data mula sa Instagram, una tuklasin ano data ang legal scrapab le mula sa platform. Legal Instagram web ang pag-scrap maaaring makuha iyong i-access sa ito tatlong kategorya ng data:

  • Mga Hashtag: Maaari mong makuha ang nangungunang performing o kamakailang mga larawan a nd mga video na na-tag na may isang partikular hashtag sa kanilang caption.

  • Mga Profile: maaari kang makakuha ng profile data tulad bilang post, media bilang, at mga tagasubaybay/pagsubaybay.

  • Mga Post: Maaari kang makakuha ng mga sukatan tulad bilang comment count, likes count, profile ID, publishing petsa, SUR.

family: data-type="text">3 Mga Paraan upang I-scrape Instagram

Narito ang tatlong paraan para i-scrape ang Instagram. Piliin ang isa na nababagay sa iyong mga pangangailangan at mapagkukunan:

Pag-scrape Instagram Paggamit Instagram API

Narito ang isang step-by-step na gabay tungkol sa paano i-scrape Instagram& nbsp;ngunit siguraduhin iyong matugunan ang sumusunod mga kinakailangan una:

  • An Instagram Business/Creator Account

  • Isang Facebook Page naka-link sa sa Instagram Negosyo/Creator Account

  • A Facebook Developer account upang gamitin ang Instagram Graph API

  • Isang nakarehistrong setup ng Facebook App na may pinakamababang setting

Kapag tapos ka na sa mga kinakailangang ito, magiging ganito ang mga susunod na yugto.

Magdagdag ng Facebook Login Functionality:

Mag-navigate sa dashboard ng iyong Facebook App at mag-click sa button na "Product +" mula sa panel sa kaliwang bahagi ng window. Mula doon idagdag ang Facebook Login Product. Sa ngayon, huwag baguhin ang mga setting para sa produktong ito at iwanan ang mga ito sa default.

Susunod, magkakaroon ka i Ipatupad Facebook Mag-login in iyong app na may ang help="color "class" #1e4dff;">Facebook Login Documentation at siguraduhin iyong pamamaraan sa pag-login humihiling dalawang pangunahing mga pahintulot:

Paano i-scrape ang Instagram? 3 Paraan para Sulitin ang Iyong mga Pagsisikap sa Pag-scrap

Bumuo ng Access Token:

Ang pagsasagawa ng aksyon mula sa app dashboard sa ang Instagram account ay nangangailangan a&n bsp;User Token sa Pag-access. Sa sa kanan sa gilid ng dashboard pahina, buksan ang User o Page dropdown at piliin Kumuha ng User Access Token.

Isang popup window ay lalabas ipinapaalam na isang app (sa&nbs p;ito kaso iyong app) ay humihiling para sa sa nabanggit mga pahintulot. ;Pindutin lang ang ang Magpatuloy o OK button at makukuha mo ang User I-access Token sa ang Access Token field sa iyong dashboard.

Paano i-scrape ang Instagram? 3 Paraan para Sulitin ang Iyong mga Pagsisikap sa Pag-scrap

Ngayon gamit ang User Access Token, magsasagawa kami ng ilang pangunahing mga query sa Instagram Account.

1. Kumuha ng Facebook Page ID:

Una, kailangan natin ang Facebook Page's ID na nakakonekta sa Instagram Business account. Para dito, patakbuhin ang sumusunod na Get query sa dashboard.

"https://graph.facebook.com/v19.0/me/accounts?access_token={access-token}"

Ibabalik nito ang pangalan at ID ng Facebook Pages na pagmamay-ari ng Facebook user. Magiging ganito ang magiging output.

{
"data": [
{
"access_token": "EAAJjmJ...",
"category": "Page App",
"category_list": [
{
"id": "2301",
"name": "App Page"
}
],
"name": "Metricsaurus",
"id": "134895793791914",
"tasks": [
"ANALYZE",
"ADVERTISE",
"MODERATE",
"CREATE_CONTENT",
"MANAGE"
]
}
]
}


Kopyahin ang ID ng page na nakakonekta sa Instagram Business Account.

2. Kunin Instagram Business Account ID:

Gamit ang Facebook ID i-type ang sumusunod na script sa command bar at pindutin ang isumite.

134895793791914? mga patlang=instagram_business_account

Makukuha mo ang sumusunod na output.

{
"instagram_business_account": {
"id": "17841405822304914" // Connected IG User ID
},
"id": "134895793791914" // Facebook Page ID
}

3. Kumuha ng Mga Media Object ng Instagram Account:

Kopyahin ang Instagram ID mula sa output at i-execute ang sumusunod na script para makuha ang mga ID ng lahat ng kwentong kasalukuyang naka-post sa Instagram Business Account.

style="height: 54.3958px;">

17841405822304914/stories

Ang output ay maglalaman ng ID para sa bawat kuwento.

{
"data": [
{
"id": "17918195224117851"
},
{
"id": "17895695668004550"
},
{
"id": "17899305451014820"
},
{
"id": "17896450804038745"
},
{
"id": "17881042411086627"
},
{
"id": "17869102915168123"
}
]
}

Isa lamang itong halimbawa. Gamit ang Instagram Graph API maaari ka ring kumuha ng iba pang impormasyon gaya ng metadata ng user ng Instagram at magsagawa ng hashtag research.

Ngayon ay lumipat tayo sa ibang paraan ng pag-scrape ng data mula sa Instagram.

Scrapper Instagram Gamit No Code Cloud Scrapper

Para sa mga walang coding background, ang pamamaraan sa itaas ay maaaring mahirap unawain, lalo na ang gumanap. Pero huwag kang mag-alala. May mga Instagram Scraper na nagsasagawa ng trabaho nang hindi nangangailangan ng anumang code.

Narito paano mag-scrape Instagram gamit isa sa mga na mga tool na tinatawag Apify.

Pumunta sa Apify Instagram Scraper page:

Buksan ang Apify Instagram Scraper page at i-click Subukan para sa Libre height.


Paano i-scrape ang Instagram? 3 Paraan para Sulitin ang Iyong mga Pagsisikap sa Pag-scrap

Mag-sign up sa Apify gamit ang iyong email address o Google o Github account. Dadalhin ka nito sa Apify Console kung saan nangyayari ang totoong pag-scrap ng Instagram.

Magtipon Target Instagram URLs:

Gamit ang Instagram app o website, kolektahin ang lahat ng URL ng profile ng mga Instagram account na gusto mong i-scrape. Sa Apify console, i-paste ang lahat ng URL na ito sa ibinigay na mga field ng input nang paisa-isa. Upang ipasok ang mga ito nang sabay-sabay, maaari mong i-click ang button na Bultuhang I-edit.

Paano i-scrape ang Instagram? 3 Paraan para Sulitin ang Iyong mga Pagsisikap sa Pag-scrap

Apify ng tatlong opsyon sa pag-scrape para sa mga ibinigay na URL, maaari kang mag-scrape ng mga post, at komento o kumuha ng iba't ibang detalye mula sa mga profile.

I-click ang I-save at Simulan:

Iwanang hindi nagbabago ang natitirang mga setting at pindutin ang Save at Start upang patakbuhin ang scraper. Ang resulta ay nasa anyo ng isang talahanayan na naglalaman ng mga row na katumbas ng bilang ng mga URL ng profile na iyong ibinigay na may ilang mga column na naglalaman ng metadata ng profile tulad ng talambuhay, bilang ng mga tagasunod, bilang ng mga post, bilang ng reel, account ID, at katayuan ng pag-verify upang pangalanan ang ilan.


Store Resulta:

Pindutin ngayon ang button na I-export ang Mga Resulta at piliin ang gusto mong format ng file mula sa pop-up window. Maaari mo ring linisin ang data sa pamamagitan ng pagpili o pag-alis ng mga field na hindi mo kailangan. Pagkatapos nito, maaari mong i-download ang mga resulta, tingnan ang mga ito sa isang bagong tab, o ibahagi ang mga ito sa pamamagitan ng isang link.

Paano i-scrape ang Instagram? 3 Paraan para Sulitin ang Iyong mga Pagsisikap sa Pag-scrap

Pag-scrape Instagram Paggamit a Programming Wika

Ang pagbuo ng sarili mong Instagram scraper ay maaaring ang pinakamabisang solusyon kung hindi pangkaraniwan ang iyong mga kinakailangan at mayroon kang mahusay na kaalaman sa programming o may developer sa iyong team. Magagawa mo iyon gamit ang anumang programming language na isinama sa isang web scraping framework.

Ipinapakita ng gabay na ito kung paano i-scrape ang Instagram gamit ang Python at Selenium, isang browser automation framework.

Import Essential Libraries:

Upang magsimula, mag-import ng mga pangunahing aklatan kabilang ang Selenium, ang webdriver nito, at Selenium-Stealth upang maiwasan ang pag-detect.

mula sa selenium import webdriver
mula sa selenium.webdriver.common.by import Ni
mula sa pprint import pprint
import json
mula sa selenium_stealth import stealth

Tutulungan kami ng pprint library na i-print nang maayos ang output para sa mas mataas na pagiging madaling mabasa.

Kolektahin Instagram Mga Username:

Gumawa ng isang listahan at idagdag ang mga username ng mga Instagram profile na iyong tina-target.

mga username = ["natureismetal", "miteuniversity", "samstailor", "therock"]
proxy = "server:port"
output = {}

Ang output variable ay isang diksyunaryo na aming gagamitin upang iimbak ang mga resulta.

Tukuyin ang pangunahing function:

Ang pangunahing function ay magdadaan sa listahan ng mga username nang paisa-isa at tatawagan ang scrape function sa bawat username.

overflow-wrap: break-word: putol-salitang kulay: #282a36; colspan="1" rowspan="1">

def pangunahing():
para sa username sa mga username:
scrape(username)


Tukuyin ang a function upang pamahalaan browser setting:

Aayusin ng function na ito ang setting ng browser bago ang bawat kahilingan sa pag-scrape upang magdagdag ng anonymity upang maiwasan ang pagtuklas ng Instagram. Kasama sa mga pagbabagong ito ang mga umiikot na proxies, pag-configure ng mga setting ng Selenium-Stealth, at paggawa ng artipisyal na user-agent.

overflow-wrap: break-word: putol-salitang kulay: #282a36; colspan="1" rowspan="1">

def prepare_browser():
chrome_options = webdriver.ChromeOptions()
#282a36;" data-type="text">chrome_options.add_argument(f'--proxy-server= style="color: #f1fa8c; background-color: #282a36;" data-type="text">')
chrome_options.add_argument("start-maximized"data-type) data-path="148,0,0,0,13"> chrome_options.add_experimental_option("exclude:><8Switchesf8" background-color: #282a36;" data-type="text">, ["enable-automation"])
chrome_options.add_experimental_option('useAutomation:><8spanf style background-color: #282a36;" data-type="text">, False)
driver = webdriver.Chrome(options= chrome_options)
&nbscolor: #f8f8f2; kulay ng background: #282a36; data-type="text">stealth(driver,
user_agent= 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKi t/537.36 (KHTML, like Tuko) Chrome/83.0.4103.53 Safari/537.36',
languages= ["en-US", ],
vendor= "Google Inc.",
platform= "Win32",
webgl_vendor= #282a36;" data-type="text">"Intel Inc." background-color: #282a36;" data-type="text">"Intel Iris OpenGL Engine",,
fix_hairline= Mali,
run_on_insecure_origins= False )
return driver

Tumukoy ng function para sa Scraping:

Ang scrape() function na tinatawag sa main function ay tumatagal ng isang Instagram username bilang argumento at gumagawa ng profile endpoint na gagamitin namin para magpadala ng kahilingan gamit ang Chrome browser na ginawa sa pamamagitan ng prepare_browser() function.

Titingnan din namin ang status ng kahilingan. Kung ang iyong kahilingan ay na-redirect sa pahina ng pag-login, nangangahulugan ito na nabigo ang kahilingan. Samantalang kung walang string sa pag-log in, matagumpay ang kahilingan at ipapa-parse ang resulta bilang JSON at ipapadala sa function na parse_data() kasama ng username.

> nakatagong padding: 4px 8px; colspan="1" rowspan="1">

def scrape(username):


url = f'https://instagram.com/{username}/? __a=1&__d=dis'
chrome = prepare_browser()
chrome.get(url)
print (f"Attempting: _chrome}")


if "login" sa chrome.current_url:
print ("Nabigo/ redir sa login")
chrome.quit()

iba:
print ("Tagumpay") resp_body = chrome.find_element(By.TAG_NAME, #282a36;" data-type="text">"body" data_json = json.loads(resp_body)
user_data = data_json['graphql']['user']

parse_data(username, user_data)
chrome.quit()


Tukuyin ang parse_data() function:

Pina-parse ng function na ito ang data ng JSON sa argument ng user_data upang makuha ang gustong field ng data. Sa halimbawang ito, kami ay nag-i-scrap para sa buong pangalan ng user, kategorya ng account, bilang ng tagasunod, at mga caption ng post.

< hidden style papx8 ; overflow-wrap: break-word: putol-salitang kulay: #282a36; colspan="1" rowspan="1">

def parse_data(username, user_data):
captions = []


if len(user_data['edge_owner_to_timeline_media' style="color: #f1fa8c; background-color: #282a36;" data-type="text">'edges']) > 0: para sa node sa user_data['edge_owner_to_timeline_media']['edges']:
if len(node['node's][fa-type="text"> background-color: #282a36;" data-type="text">'edge_media_to_caption'][]) > 0:
&nbs;&nbs; #f8f8f2; kulay ng background: #282a36; data-type="text"> If node['node']['edge_media_to_caption']['edges'][0]['node']['text']:
2; 2;background style="8:f; #282a36;" data-type="text"> atpend(

node['node''edge_media_to_caption']['edges'][0][]['text'

output[username] = {
'name': user_data['full_name'],
'category': user_data['category_name'],
'followers': user_data['edge_followed_by']['count'],
'post': caption,

}


Isulat ang driver code:

Sisimulan ng driver code ang proseso ng pag-scrape, kinukuha ang data sa output variable, at tinatawag ang pprint() function dito para ipakita ito sa magandang paraan.

if __name__ == '__main__':
main()
pprint(output)


Bypass Detection Gamit ang AdsPower Antidetect Browser

Mahigpit ang Instagram pagdating sa pag-scrape at nagbibigay ng napakalimitadong access sa pampublikong data sa platform nito. Kabilang dito ang pangunahing impormasyon sa antas tulad ng profile ID, bilang ng mga tagasunod, pag-like, at bilang ng komento. Ang paghuhukay ng mas malalim kaysa riyan ay nangangailangan ng pag-log in na labag sa mga patakaran ng Instagram at maaaring humantong sa pagsususpinde ng account.

Ito ay kung saan Ito kung saan style="https://www.adspower.com/">AdsPower dumating sa madaling gamitin sa pamamagitan ng pagtulong iyong panatilihin a mababang profile kapag craping data mula sa Instagram na maaaring may isang pagkakataon ng labag sa Instagram patakaran. AdsPower ay gumagamit ng mga diskarte sa antidetect gaya ng pag-ikot ng IP at paglilimita sa rate upang maiwasan ang mga hakbang na anti-scraping.


Paano i-scrape ang Instagram? 3 Paraan para Sulitin ang Iyong mga Pagsisikap sa Pag-scrap

Kaya sa susunod na oras ikaw ay kinakayod Instagram gamit a no-co de tool o hindi opisyal Instagram APIs siguraduhin na gumamit AdsPower antidetect browser upang bypass detection.

https://share.adspower.net

Konklusyon

Pinapayagan lang ng Instagram ang pag-scrape para sa pampublikong available na data sa platform nito kung saan nagbibigay ito ng dalawang API. Ngunit ang mga API na ito ay nag-aalok ng napaka-basic na antas ng pag-scrape nang hindi hinahayaan kang mag-scrape ng data mula sa Instagram na talagang nauugnay.

Ito iiwan amin sa third-party web scraper o paggawa&nbs p;iyong sariling scraper gamit programming mga wika. Gayunpaman, pag-scrape Instagram& nbsp;gamit ang ang mga ito hindi opisyal paraan may mga pagkakataon ng tuklasin kaya gawin&nb sp;sigurado ginagamit mo AdsPower antidetect browser para sa idinagdag proteksyon.

AdsPower

Pinakamahusay na Multi-Login Browser para sa Anumang Industriya

Paano i-scrape ang Instagram? 3 Paraan para Sulitin ang Iyong mga Pagsisikap sa Pag-scrap

Binabasa din ng mga tao