2017-04-16 10 views
1

このページ 充填フォームへのリンクです...私はテキスト領域(例えば)(「Hello World」の中にコンテンツを入力する必要がPythonの要求(フォーム記入)

https://anotepad.com/notes/2yrwpi

)そしてsaveを押しますが、これはすべてpython requestモジュール(get、postなど) で行い、セレンとbeautifulsoupモジュールは使用しません。

url="https://anotepad.com/notes/2yrwpi" 
txt = "Hello World" 

#construct the POST request 
form_data = {'btnSaveNote':'Save', 'notecontent' : txt} 

post = requests.post(url,data=form_data) 

しかし、それは

が助けてください動作していないようです:

は、私のようなものを試してみました!

+1

エラーはどうなりますか? – Cfreak

+0

ノートに変更はありません。 –

答えて

1

は、あなたはまた、フォームデータにノート番号を渡す必要があり、保存URLにログイン、ポストする必要があります。

import requests 

save = "https://anotepad.com/note/save" 
txt = "Hello World" 
login = "https://anotepad.com/create_account" 

data = {"action": "login", 
     "email": "[email protected]", 
     "password": "xxxxxx", 
     "submit": ""} 

# construct the POST request 
with requests.session() as s: # Use a Session object. 
    s.post(login, data) # Login. 

    form_data = {"number": "2yrwpi", 
       "notetype": "PlainText", 
       "noteaccess": "2", 
       "notequickedit": "false", 
       "notetitle": "whatever", 
       "notecontent": txt} 

    r = s.post(save, data=form_data) # Save note. 

r.json()は、成功にあなたに{"message":"Saved"}を与えるだろう。また、あなたが持っているノートを見たい場合は、ログイン後にs.post("https://anotepad.com/note/list").textを実行してください。

+0

ありがとうalot Sir.It働いた。 しかし、もう助けが必要です。どこでこれをやっているのか分かりました。つまり、完全なWebスクレイプルを最初から詳細に説明している本を紹介することができます。 ありがとうございます –

+0

save = "https://anotepad.com/note/save"これは保存URLであることをどのように知ることができますか? –