1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89
| import requests import json import logging import sys from uuid import uuid4
logging.basicConfig(level=logging.INFO, format='%(asctime)s - %(levelname)s - %(message)s') logger = logging.getLogger(__name__)
def get_user_info(cookies, target_username, headers): """通过 Instagram API 获取用户信息""" url = f"https://i.instagram.com/api/v1/users/web_profile_info/?username={target_username}"
try: response = requests.get(url, headers=headers, cookies=cookies) response.raise_for_status()
data = response.json() user_data = data.get("data", {}).get("user", {})
if not user_data: logger.error("未找到用户信息") return None
user_info = { "username": user_data.get("username"), "full_name": user_data.get("full_name"), "biography": user_data.get("biography"), "followers": user_data.get("edge_followed_by", {}).get("count"), "following": user_data.get("edge_follow", {}).get("count"), "posts": user_data.get("edge_owner_to_timeline_media", {}).get("count"), "is_private": user_data.get("is_private"), "external_url": user_data.get("external_url") } return user_info except requests.exceptions.RequestException as e: logger.error(f"请求失败: {e}") return None except json.JSONDecodeError as e: logger.error(f"JSON 解析失败: {e}") return None
def main(): cookies = { "datr": "qoUga1PC7Vb2xfx_Rectc8AW8", "ig_did": "6D1BFA81E-9542-42D2-A005-93E591B49A9D", "dpr": "1.3175", "mid": "aCCFqg1ALAAFBWbRNhcq-dKkP7D0U", "ig_nrcb": "1", "ps_l": "1", "ps_n": "1", "csrftoken": "x1vD951m4mltz3Gwo7LGOmSVk2d2HfBqa1", "ds_user_id": "743291869291", "sessionid": "743291186929%3A7LWehUJrWsS1vE%3A20%3AAYeYxYpoNFx5MJAu7uo7dMfYLW-oQ8z9hi-FaaRkdw", "wd": "1148x937", "rur": "NHA\054743129186929\0541778498815:01f7ee4f72c0026e5643f7e964139a43e978e1a251d6919b7493a76293ac6c7bc8642abc" }
target_username = "jjlin"
headers = { "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/129.0.0.0 Safari/537.36", "x-ig-app-id": "9366197433924591", "x-csrftoken": "xvD951m4mltz3Gwo7LGOmSVk2d2HfBqa", "accept": "application/json", "referer": f"https://www.instagram.com/{target_username}/", "x-ig-www-claim": "hmac.AR2-3v0n27y_xxxxxxxxxxxx", }
user_info = get_user_info(cookies, target_username, headers)
if user_info: logger.info("用户信息:") for key, value in user_info.items(): logger.info(f"{key}: {value}")
if __name__ == "__main__": main()
|