Ich versuche, einen Aufruf der Import.io API. Dieser Aufruf muss die folgende Struktur haben:Python Anfragen Anruf mit URL mit Parametern
'? https://extraction.import.io/query/extractor/ {{crawler_id}} _ apikey = xxx & url = http://www.example.co.uk/items.php?sortby=Price_LH&per_page=96&size=1%2C12&page=35'
Sie in diesem Anruf sehen können, den Parameter "url" hat auch subsumieren:
http://www.example.co.uk/items.php?sortby=Price_LH&per_page=96&size=1%2C12&page=35
Es kommt einfach vor, dass diese sekundäre URL auch Parameter benötigt. Aber wenn ich es als eine normale Zeichenfolge wie im obigen Beispiel passieren, die API-Antwort enthält nur den Teil vor dem ersten Parameter, wenn ich die API-Antwort erhalten:
Und das ist nicht richtig ist, scheint es, als ob er den Anruf mit der unvollständigen URL anstelle des einen werden machen würde ich in vergangen
ich Python und Anfragen bin mit dem Anruf in der folgenden Art und Weise zu tun.
import requests
import json
row_dict = {'url': u'http://www.example.co.uk/items.php?sortby=Price_LH&per_page=96&size=1%2C12&page=35', 'crawler_id': u'zzz'}
url_call = 'https://extraction.import.io/query/extractor/{0}?_apikey={1}&url={2}'.format(row_dict['crawler_id'], auth_key, row_dict['url'])
r = requests.get(url_call)
rr = json.loads(r.content)
Und wenn ich drucken Sie das reuslt:
"url" : "http://www.example.co.uk/items.php?sortby=Price_LH",
aber wenn ich r.url drucken:
https://extraction.import.io/query/extractor/zzz?_apikey=xxx&url=http://www.example.co.uk/items.php?sortby=Price_LH&per_page=96&size=1%2C12&page=35
So in der URL es scheint alles in Ordnung, aber nicht in der Antwort zu sein.
Ich habe dies mit anderen URLs versucht und alle nach dem ersten Parameter abgeschnitten.
Es scheint wie 'import.io' der api den Rest der Argumente akzeptiert . – tanglong