屏幕抓取iTunes Connect:浏览登录页面

时间:2016-11-08 23:57:35

标签: python login beautifulsoup itunesconnect screen-scraping

要对 iTunes Connect 数据执行屏幕抓取,我正尝试使用 Python 请求来完成其登录BeautifulSoup

这是 iTunes Connect 登录页面: 的 https://itunesconnect.apple.com/itc/static/login

通常,要开始在其他网站上进行屏幕抓取,我可以通过从网页的隐藏内容中抓取令牌来完成登录,然后我就可以执行登录凭证允许网站认为登录请求来自有效的浏览器。

例如,这是我使用伪python编码执行登录访问的粗略步骤:

session = requests.Session()

response = session(GET, [URL LOGIN], ...)
soup = BeautifulSoup(response.text, 'html.parser')
token_tag = soup.find_all(...)
TOKEN = token_tag.get(...)

response = session(POST, [URL LOGIN], [CREDENTIALS + TOKEN])
login_html = response.text
login_soup = BeautifulSoup(login_html, 'html.parser')

然而,我很难使用iTune Connects'登录。

让其他人尝试过,有什么诀窍?

由于

1 个答案:

答案 0 :(得分:0)

我在这里吐痰,但问题可能是登录凭证和令牌缺少base64编码,因为它们是通过POST传递的。

您的请求应该类似于以下内容:

import requests
import base64

r = requests.post(<url login>, 
                headers={"Authorization": "Basic " + base64.b64encode(b'username:password'),
                data=payload)