python - scraping - instagram scraper php
Raspado en Python (1)
En el código siguiente, solo está recuperando el primer nodo (que es la primera imagen).
print(result[''entry_data''][''ProfilePage''][0][''user''][''media''][''nodes''][0][''caption''])
Para obtener la información de las 10 imágenes recientes del usuario, intente esto en su lugar.
recent_ten_nodes = result[''entry_data''][''ProfilePage''][0][''user''][''media''][''nodes''][:10]
Para imprimir solo los subtítulos, la cantidad de Me gusta y comentarios hacen esto.
for node in recent_ten_nodes:
print node[''caption'']
print node[''likes''][''count'']
print node[''comments''][''count'']
Para almacenar estos valores, depende de usted decidir cómo desea almacenarlos.
Yo quería obtener la leyenda, no. de Me gusta y comentarios de las 10 imágenes recientes de un usuario en particular. Usando el código a continuación, solo puedo obtener el último.
Código:
from selenium import webdriver
from bs4 import BeautifulSoup
import json, time, re
phantomjs_path = r''C:/Users/ravi.janjwadia/Desktop/phantomjs-2.1.1-windows/bin/phantomjs.exe''
browser = webdriver.PhantomJS(phantomjs_path)
user = "barackobama"
browser.get(''https://instagram.com/'' + user)
time.sleep(0.5)
soup = BeautifulSoup(browser.page_source, ''html.parser'')
script_tag = soup.find(''script'',text=re.compile(''window/._sharedData''))
shared_data = script_tag.string.partition(''='')[-1].strip('' ;'')
result = json.loads(shared_data)
print(result[''entry_data''][''ProfilePage''][0][''user''][''media''][''nodes''][0][''caption''])
Resultado: ÚLTIMA LLAMADA: Ingrese para conocer al Presidente Obama este verano antes de la fecha límite de esta noche. → Enlace en perfil.