2016-08-11 19 views
0
import requests 
from bs4 import BeautifulSoup 
s = requests.Session() 
content = s.get('https://nucleus.niituniversity.in/Default.aspx').content 
soup = BeautifulSoup(content,"html5lib") 
print("viewState = " + str(soup.select_one("#__VIEWSTATE")["value"])) 
print("UserDet = " + str(soup.select_one("#SchSel_hidCoreUserDet")["value"])) 

結果:= qdwrf3rf
Pythonのレスポンスから要素の値を解析できませんか?

KeyError例外
のViewState:何の価値がuserdet

のために存在しませんが、ときに私手動で応答を参照してください意味whoch値login.The Userdetの値が存在します。 enter image description here

手動ログインに問題がないのに、Pythonのリクエスト中にエラーが発生するのはなぜですか?

+0

文字列の末尾に余分な一重引用符があるようです。#SchSel_hidCoreUserDet ' – glls

+0

編集完了... – anderson

答えて

0

いいえ、id="SchSel_hidCoreUserDet"の要素にはvalueがありません。ここで私は、ブラウザでこのページを開いた場合、私は見たものである。

<input type="hidden" name="SchSel$hidCoreUserDet" id="SchSel_hidCoreUserDet" value=""> 

値は実際には空である - それは空の値を持つvalue属性を追加しますブラウザです。どちらの場合も

<input id="SchSel_hidCoreUserDet" name="SchSel$hidCoreUserDet" type="hidden"/> 

、要素が値を持っていません。

そして、ここでは、私がBeautifulSoupで見つかった要素を印刷するかどうかを確認するものです。


これまでにこのサイトにログインしていて、Cookieやローカルストレージを覚えている可能性があります。シークレットウィンドウでこのページのソースを調べるか、このサイトにログインしていないブラウザを調べてみてください。

+0

440行[表示](表示元:https://nucleus.niituniversity.in/)を参照してください。 – anderson

+0

@andersonを割り当てています。これは、 'hidCoreUserDet.value =" ";行440にあります。 – alecxe

+0

残念ながら453行目を参照してください。 – anderson

関連する問題