0
ウェブサイトからjsonファイルを取得しようとしています。私はBeautifulSoupライブラリを試しましたが、空でした。デベロッパーツールでJSONファイルを取得するリクエストを送信する方法
は空ではありませんでしたし、サンプルjQueryのコードがあります:
<p>You are seeing this message because this HTTPS site requires a 'Referer header' to be sent by your Web browser, but none was sent. This header is required for security reasons, to ensure that your browser is not being hijacked by third parties.</p>
<p>If you have configured your browser to disable 'Referer' headers, please re-enable them, at least for this site, or for HTTPS connections, or for 'same-origin' requests.</p>
`
あなたが助けてくださいでした:
$('#domtableweek').dataTable({
"processing": true,
"serverSide": true,
"bSort": false,
"bLengthChange": false,
"pageLength": 10,
ajax: {
url: '/data/mal-domains-data',
type: 'POST',
data: {'csrfmiddlewaretoken': 'yafh4aGjo0S6SeTci6qv2PzlcEuTW7E8', 'time':'7-Day'}
},
"dataSource": ''
});
だから私は
import requests
csrf = 'some_csrf_token'
cookie = 'some_cookie_id'
data = dict({'csrfmiddlewaretoken': 'yafh4aGjo0S6SeTci6qv2PzlcEuTW7E8', 'time':'7-Day'})
url = 'https://minotr.net/data/mal-domains'
headers = {'Cookie':cookie}
r = requests.post(url, data=data, headers=headers)
print r.text
結果は、このコードを試してみました私。
とValueError(「いいえJSONオブジェクトをデコードすることはできなかった」) ValueErrorを送出:いいえJSONオブジェクトは –
をデコードすることができそれはあなたがいないJSONと間違ってリンクになったことを意味します。また、リクエストを行うと403エラーが発生しますので、設定を確認して別のリファラーリンク(通常はあなたがリクエストしたページにアクセスするリンク)を設定してください。 – Snusmumr