Philly Police webpageの所与の場所から警察区を取得しようとしています。手でこれを行うにはあまりにも多くの場所があるので、私はPythonのリクエストライブラリを使ってプロセスを自動化しようとしています。 Webページの以下のように位置の値を保持している形式は次のとおりです。Python3は、投稿要求を許可しないフォームを提出するようにライブラリを要求します。
<form id="search-form" method="post" action="districts/searchAddress">
<fieldset>
<div class="clearfix">
<label for="search-address-box"><span>Enter Your Street Address</span></label>
<div class="input">
<input tabindex="1" class="district-street-address-input" id="search-address-box" name="name" type="text" value="">
</div>
</div>
<div class="actions" style="float: left;">
<button tabindex="3" type="submit" class="btn btn-success">Search</button>
</div>
<a id="use-location" href="https://www.phillypolice.com/districts/index.html?_ID=7&_ClassName=DistrictsHomePage#" style="float: left; margin: 7px 0 0 12px;"><i class="icon-location-arrow"></i>Use Current Location</a>
<div id="current-location-display" style="display: none;"><p>Where I am right now.</p></div>
</fieldset>
</form>
しかし、私は、以下のものを使用して投稿したり、ウェブページに置くしようとすると:
r = requests.post('http://www.phillypolice.com/districts',data={'search-address-box':'425 E. Roosevelt Blvd'})
私はエラー405を取得するには、POSTが許可されていません。私はJavascriptをオフにしてウェブページ上でその区域を見つけようとしました。私が提出したときに同じ405のエラーメッセージを受け取りました。したがって、フォームは間違いなく提出されず、地区はJavaScriptを使用して検索されます。
リクエストライブラリを使用してJavaScriptをトリガーする送信ボタンを 'クリック'する方法はありますか?あなたは「提出」打ったとき
いいえ、Google geocode apiを使用しないのは公正ではありません!良いアイデア! – alecxe
@alecxe、私は何と言うことができます、私は無料のものが好きです! –