• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

ESP8266 Счетчик фолловеров Instagram

anthony3d

New member
Уважаемое сообщество!

С вашего позволения продолжу ламерские вопросы по ESP8266.

Нужно сделать апаратный счетчик фолловеров Инстаграм на ESP и TM1637.
И если хард вопросов не вызывает, то в софте — затык.
InstagramStats — основная на сегодняшний день библиотека по работе с юзер-данными Инстаграм, почему-то у меня не выдает результата. Демонстрационный пример возвращает 0 (ноль).
Инстаграм, конечно, маниакально борется с автоматизированными средствами накрутки, но прятать счетчик фолловеров, думаю,— уж слишком!

У кого-нибудь вообще это работает?
 

NeoroN

Member
на питоне:
Код:
from urllib.request import urlopen
data = urlopen("http://instagram.com/asus/").read()
start = data.index(b'"userInteractionCount":"')+24
end = data.index(b'"',start)
followers = str(data[start:end],"utf-8")
на микропитоне:
Код:
import usocket
account = "asus"
ai = usocket.getaddrinfo("instagram.com", 80, 0, usocket.SOCK_STREAM)
ai = ai[0]
s = usocket.socket(ai[0], ai[1], ai[2])
count = 0
try:
    s.connect(ai[-1])
    s.write(b"GET /%s/ HTTP/1.0\r\n" % account)
    s.write(b"Host: instagram.com\r\n")
    s.write(b"\r\n")
    l = ""
    while l:
        l = s.readline()
        s = l.find(b"userInteractionCount")
        if s > -1:
            e = l.find(b'"',s+23)
            if e > -1:
                count = int(str(l[s+23:e],"utf-8"))
                break
    s.close()
except OSError:
    s.close()
 

anthony3d

New member
Разобрался с библиотекой InstagramStats
Оказывается, она работает, но только если выставить побольше тайм-аут.
Лезем прямо в InstagramStats.cpp, находим
now = millis();
while (millis() - now < 3000) {
и меняем 3000 на 30000 смело. Если и так выдает нули — еще выше.
У меня с 30000 возвращает нуль раз в 4-5 замеров. Я его программно отбрасываю.
 
Сверху Снизу