Ich versuche, eine POST-Anforderung für ein Formular auf der folgenden Website entweder über Rubin- oder Python zu machen: ‚Keine Daten‘ http://diamond-cut.com.au/holloway_cut_adviser.htmPOST Anfrage in Ruby/Python Rückkehr ‚Keine Daten‘
die Anfrage zurückkehrt Ich denke, dass ich etwas von meiner Anfrage-Header bin Weglassen
Minimal-Code, ‚Keine Daten‘ in Ruby zurückgibt (zB User-Agent, akzeptieren Einschließlich dieser Parameter hat das Ergebnis nicht verändert.):
require 'restclient'
url='http://www.pricescope.com/hca.php'
params = {"depth_textbox" => '60',
"table_textbox" => '57',
"crown_listbox" => "0",
"crown_textbox" => '34',
"pavilion_listbox" => "0",
"pavilion_textbox" => '40.5',
"cutlet_textbox" => "0"}
page=RestClient.post(url,params)
In Python:
import requests
url='http://www.pricescope.com/hca.php'
params = {"depth_textbox" : '60',
"table_textbox" : '57',
"crown_listbox" : "0",
"crown_textbox" : '34',
"pavilion_listbox" : "0",
"pavilion_textbox" : '40.5',
"cutlet_textbox" : "0"}
r=requests.post(url,params)
Danke! Es funktionierte. Der Vollständigkeit halber sei hier die äquivalente Korrektur in Ruby beschrieben: 'page = RestClient.post (URL, Daten = Parameter, Header = {'Referer' => URL})' Gibt es eine intuitive Erklärung dafür, warum der Referer-Header benötigt wurde? Wie würde Debugging dies auch zeigen? –
@GolanTrevize es ist Einschränkungen von Seiteninhabern. –