使用python登录instagram

Posted

技术标签:

【中文标题】使用python登录instagram【英文标题】:Login to instagram using python 【发布时间】:2018-04-01 01:56:36 【问题描述】:

我正在尝试登录 instagram。这是我的代码

from bs4 import BeautifulSoup
from requests import *
payload = 
    'action': 'login',
    'username': 'name',
    'password': 'pass'


with session() as c:
    c.post('https://www.instagram.com/login.php', data=payload)
    response = c.get('https://www.instagram.com/accounts/edit/')
    print(response.headers)
    print(response.text)

不幸的是,它似乎没有让我登录。我明白了:

lt-ie8 lt-ie7 not-logged-in client-root

任何解决方案将不胜感激。谢谢。

【问题讨论】:

在测试登录之前,如果你成功访问了instagram,是否可以先查看页面?您可能会遇到错误,特别是如果他们实施了反机器人功能。 我尝试转到'instagram.com/login.php',页面不存在。 您没有传递任何标题。您是否尝试过包含它们? 【参考方案1】:

你可以从这里得到实现的想法

Logging to Instagram using Python requests

我的 Instagram 登录代码

import pdb
from selenium import webdriver

driver = webdriver.PhantomJS()
driver.get('https://www.instagram.com/accounts/login/')
dom = driver.find_element_by_xpath('//*')

pdb.set_trace()
username = dom.find_element_by_name('username')
password = dom.find_element_by_name('password')
login_button = dom.find_element_by_xpath('//*[@class="_qv64e _gexxb _4tgw8 _njrw0"]')

username.clear()
password.clear()
username.send_keys('your username')
password.send_keys('your password')

login_button.click()
driver.get('https://www.instagram.com/accounts/login')

if 'logged-in' in driver.page_source:
    print 'Logged in'

【讨论】:

【参考方案2】:

你需要一个 API 密钥才能调用 Instagram API,而且我认为你不能直接登录这样的人。

【讨论】:

【参考方案3】:

我建议您使用Selenium 和PhantomJS webdriver。

【讨论】:

以上是关于使用python登录instagram的主要内容,如果未能解决你的问题,请参考以下文章

python登录成功后跳转游戏

使用Python自动登录Gmail

Python要求使用网站登录

Python网络爬虫---使用已登录的cookie访问需要登录的网页

python网络爬虫之使用scrapy自动登录网站

使用python登录网站