1
"stoken" value
を引っぱっているうちに、私のスクリプトが何らかの理由でそれらの行を数えていないように見えることに気付きました。 0
は5cd3840
である必要がありますが、代わりに1
を返します。なぜこれが盗まれた値を引き出すために指定する必要がありますか?インデックス '[0]'が正しい値を引き出していませんか?
<form class="search" action="https://www.randomsite.com;" method="get" name="search">
<div class="searchBox">
<input type="hidden" name="stoken" value="5CDE3840" />
<input type="hidden" name="lang" value="1" />
<input type="hidden" name="cl" value="alist">
<input type="hidden" name="stoken" value="5CDE3840" />
<input type="hidden" name="lang" value="1" />
<input type="hidden" name="cnid" value="500036" />
<input type="hidden" name="listtype" value="list" />
<input type="hidden" name="actcontrol" value="details" />
<input type="hidden" name="cl" value="details">
<input type="hidden" name="aid" value="15763" id="aid">
<input type="hidden" name="anid" value="15763">
<input type="hidden" name="parentid" value="15763">
<input type="hidden" name="panid" value="">
<input type="hidden" name="fnc" value="tobasket">
</div>
コード -
s = requests.session()
url = "https://www.randomsite.com"
response = s.post(url)
soup = BeautifulSoup(response.text,"lxml")
inputs = soup.find_all("input",{"type":"hidden"})
stoken = inputs[0]["value"]
cnid = inputs[3]["value"]
aid = inputs[7]["value"]
anid = inputs[8]["value"]
parentid = inputs[9]["value"]
print("STOKEN: ", stoken)
print("CNID: ", cnid)
print("AID: ", aid)
print("ANID: ", anid)
print("PARENTID: ", parentid)
出力 -
STOKEN: 1
CNID: 500036
AID: 15763
ANID: 15763
PARENTID: 15763
はHTMLです実行時に 'response.text'と同じものを投稿しましたか?私はここに2つの 'stoken'があることがわかります。 – lincr
ええ、それは2つのストーリーラインを持っていないどちらもカウントするようです。投稿されたhtmlは私からスープ –
を印刷してくれて、それは私のためにうまくいきました。 'stoken'が印刷されています。私は、HTMLファイルにテキストを保存してそれを読み込まなければならなかった以外は、同じコードを使用しました。 –