1

これは非常に簡単に思えますが、何らかの理由でこれが突風に正しく接続されておらず、データをスクレイピングできません。

    loginurl = "https://dev.flurry.com/secure/loginPage.do"
    csvurl = "https://dev.flurry.com/eventdata"

    session = requests.Session()
    login = session.post(loginurl, data={'loginEmail': 'user', 'loginPassword': 'pass'})
    data = session.get(csvurl)

これを使用しようとするたびに、新しいデータをフェッチせずにログイン画面 (loginurl) にリダイレクトされます。以前にこのようにフラーリーに正常に接続できた人はいますか?

ありとあらゆる助けをいただければ幸いです。

4

1 に答える 1

1

struts.token.name と struts.token.nameからの値、つまりtokenを入力する 2 つのフォーム フィールドがさらにあります。loginAction.doにも投稿する必要があります。

ここに画像の説明を入力

bs4を使用して値を取得して解析し、データを投稿できます。

from bs4 import BeautifulSoup
import requests 

loginurl = "https://dev.flurry.com/secure/loginAction.do"
csvurl = "https://dev.flurry.com/eventdata"#
data = {'loginEmail': 'user', 'loginPassword': 'pass'}

with requests.Session() as session:
    session.headers.update({
        "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36"})

    soup = BeautifulSoup(session.get(loginurl).content)
    name = soup.select_one("input[name=struts.token.name]")["value"]
    data["struts.token.name"] = name
    data[name] = soup.select_one("input[name={}]".format(name))["value"]
    login = session.post(loginurl, data=data)
于 2016-07-30T11:47:59.723 に答える