В настоящее время я использую python для сбора информации от пользователей в Instagram, используя текстовый файл, содержащий ссылки пользователей instagram. Хотя я могу собирать # подписчиков, # подписок и # постов, я хочу иметь возможность собирать био-информацию от пользователя. Сбор био-информации позволит мне в конечном итоге проанализировать эту информацию и собирать электронные письма. Какой самый лучший и простой способ сделать это?
Я не настолько опытен в Python, поэтому взял пример кода из интернета. Я пытался проанализировать код и использовать то, что я знаю, чтобы изменить его под свои нужды, но безрезультатно.
import requests
import urllib.request
import urllib.parse
import urllib.error
from bs4 import BeautifulSoup
import ssl
import json
class Insta_Info_Scraper:
def getinfo(self, url):
html = urllib.request.urlopen(url, context=self.ctx).read()
soup = BeautifulSoup(html, 'html.parser')
data = soup.find_all('meta', attrs= {'property':'og:description'})
text = data[0].get('content').split()
user = '%s %s %s' % (text[-3], text[-2], text[-1])
followers = text[0]
following = text[2]
posts = text[4]
email = ""
print ('User:', user)
print ('Followers:', followers)
print ('Following:', following)
print ('Posts:', posts)
print ('Email:', email)
print ('---------------------------')
def main(self):
self.ctx = ssl.create_default_context()
self.ctx.check_hostname = False
self.ctx.verify_mode = ssl.CERT_NONE
with open('users.txt') as f:
self.content = f.readlines()
self.content = [x.strip() for x in self.content]
for url in self.content:
self.getinfo(url)
if __name__ == '__main__':
obj = Insta_Info_Scraper()
obj.main()
В данный момент я помещаю пустую строку в качестве значения для переменной 'email', но в итоге хочу заменить ее кодом, который будет получать электронную почту от конкретных пользователей.