Scrapy JSON получить значение - PullRequest
0 голосов
/ 11 марта 2019

Используя эту ссылку Я пытаюсь получить следующие данные после каждого экземпляра, которые будут содержать 100 наборов данных

contributor-limited-meta":{"data":{"id":"4103089"

Ожидаемый результат будет:

768919, 4103089, 193246966, 976367, 508762, и больше

Я пытался response.xpath('//script').re(r'author":"([0-9.]+?)"') через scrapy shell, но не могу заставить его работать.

1 Ответ

3 голосов
/ 11 марта 2019

Вы можете использовать запросы, затем использовать json из ответа и извлекать в цикле

import requests
res = requests.get('https://www.shutterstock.com/sstk/api/footage/images/search?site=image&image_type=vector&q=&page%5Bnumber%5D=1&studio=1&include=contributor-limited-meta').json()
results  = []
for item in res['data']:
    id = item['relationships']['contributor-limited-meta']['data']['id']
    results.append(id)
print(results)

При использовании scrapy используйте json

jsonres = json.loads(response.body_as_unicode()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...