Инструменты для захвата и конвертирования Интернета

API Web Scraper для Python

Python Scraper API

Прежде всего скачать Web Scraper API для Python и посмотрите на пример обработчика, расположенный внутри, чтобы начать.

Обработать очищенные данные

Самый простой способ обработки скребковых данных - это доступ к данным в виде объекта JSON или XML, поскольку это позволяет легко манипулировать данными и запрашивать их. JSON будет структурирован в следующем общем формате с именем набора данных в качестве атрибута объекта, который сам будет содержать массив объектов с каждым именем столбца в качестве другого атрибута.

{
  "Dataset_Name": [
    {
      "Column_One": "https://grabz.it/",
      "Column_Two": "Found"
    },
    {
      " Column_One": "http://dfadsdsa.com/" ,
          "Column_Two" : "Missing"
          }]
          }
    

Прежде всего следует помнить, что обработчику будут отправлены все очищенные данные, которые могут включать данные, которые нельзя преобразовать в объекты JSON или XML. Поэтому тип данных, которые вы получаете, должен быть проверен перед обработкой.

scrapeResult = ScrapeResult.ScrapeResult()

if scrapeResult.getExtension() == 'json':
    json = scrapeResult.toJSON()
    for json["Dataset_Name"] in obj:
        if obj["Column_Two"] == "Found":
            #do something
        else:
            #do something else
else:
    #probably a binary file etc save it
    scrapeResult.save("results/"+scrapeResult.getFilename())

В приведенном выше примере показано, как выполнить цикл по всем результатам набора данных. Dataset_Name и делать конкретные действия в зависимости от значения Column_Two атрибут. Также, если файл, полученный обработчиком, не является файлом JSON, тогда это просто saved к каталогу результатов. В то время как класс ScrapeResult пытается гарантировать, что все размещенные файлы происходят с серверов GrabzIt, расширение файлов также должно быть проверено, прежде чем они будут saved.

Методы ScrapeResult

Ниже перечислены все методы класса ScrapeResult, которые можно использовать для обработки результатов очистки.

Отладка

Лучший способ отладить ваш обработчик Python - это загрузить результаты для анализа из веб-царапины страницы save файл, с которым у вас возникла проблема, в доступном месте, а затем передайте путь этого файла в конструктор класса ScrapeResult. Это позволяет вам отлаживать ваш обработчик без необходимости каждый раз выполнять новую очистку, как показано ниже.

scrapeResult = ScrapeResult.ScrapeResult("data.json");

#the rest of your handler code remains the same

Управление скребком

С помощью GrabzIt Web Scraper API для Python вы можете удаленно запускать, останавливать, включать или отключать очистку по мере необходимости. Это показано в примере ниже, где ID скрапа вместе с новым статусом скрапа передается SetScrapeStatus метод.

client = GrabzItScrapeClient.GrabzItScrapeClient("Sign in to view your Application Key", "Sign in to view your Application Secret")
//Get all of our scrapes
myScrapes = client.GetScrapes()
if (len(myScrapes) == 0)
{
    raise Exception('You have not created any scrapes yet! Create one here: https://grabz.it/scraper/scrape/')
}
//Start the first scrape
client.SetScrapeStatus(myScrapes[0].ID, "Start")
if (len(myScrapes[0].Results) > 0)
{
    //re-send first scrape result if it exists
    client.SendResult(myScrapes[0].ID, myScrapes[0].Results[0].ID);
}

GrabzItScrapeClient Методы и свойства

Ниже перечислены все методы и свойства класса GrabzItScrapeClient, которые можно использовать для управления срезами состояния.