Извлечение содержимого AJAX и содержимого java-скриптов с помощью scrapy

#python #scrapy #web-crawler

#python #scrapy #веб-сканер

Вопрос:

Я пытаюсь обойти этот сайт и хочу извлечь контактный номер, который находится внутри кнопки вызова.

Как я могу реализовать этот код??

Комментарии:

1. можете ли вы объяснить, почему??

Ответ №1:

Похоже, что выполняется простой запрос AJAX для извлечения строки html с номерами телефонов:

введите описание изображения здесь

 import re
import scrapy

class MySpider(scrapy.Spider):
    name = 'sophone'
    start_urls = [
        'http://www.freeindex.co.uk/profile(the-main-event-management-company)_266537.htm'
    ]

    def parse(self, response):
        # item id can be extracted from url
        item_id = re.findall("(d ).htm", response.url)[0]
        # phone api can be made using this id
        url = 'http://www.freeindex.co.uk/customscripts' 
              '/popup_view_tel_details.asp?id={}'.format(item_id)
        yield scrapy.Request(url, self.parse_phone)

    def parse_phone(self, response):
        from scrapy.shell import inspect_response
        inspect_response(response, self)