Я изучаю Scrapy, я хочу scrapy этот сайт .
В моем пауке:
import scrapy
class TencentHrSpider(scrapy.Spider):
name = 'tencent_hr'
allowed_domains = ['careers.tencent.com']
start_urls = ['http://careers.tencent.com/search.html']
def parse(self, response):
div_list = response.xpath('//div[@class="recruit-list"]')
print(div_list) # there get `[]`, no data in it.
Когда я запускаю сканирование, данные не выводятся. Почему?
Я установил заголовок запроса User-Agent в settings.py
:
USER_AGENT_LIST=[
'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.139 Safari/537.36'
"Mozilla/5.0 (Windows NT 6.2) AppleWebKit/536.3 (KHTML, like Gecko) Chrome/19.0.1062.0 Safari/536.3",
"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/536.3 (KHTML, like Gecko) Chrome/19.0.1062.0 Safari/536.3",
"Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; 360SE)",
"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/536.3 (KHTML, like Gecko) Chrome/19.0.1061.1 Safari/536.3",
"Mozilla/5.0 (Windows NT 6.1) AppleWebKit/536.3 (KHTML, like Gecko) Chrome/19.0.1061.1 Safari/536.3",
"Mozilla/5.0 (Windows NT 6.2) AppleWebKit/536.3 (KHTML, like Gecko) Chrome/19.0.1061.0 Safari/536.3",
"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/535.24 (KHTML, like Gecko) Chrome/19.0.1055.1 Safari/535.24",
"Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/535.24 (KHTML, like Gecko) Chrome/19.0.1055.1 Safari/535.24"
]
import random
USER_AGENT = random.choice(USER_AGENT_LIST)
Редактировать - 01
Возможно ли это найти причину? любой журнал ошибок для трассировки?
EDIT -02
Почему, если данные запрашиваются из API по AJAX, Scrapy не может получить данные ? мы знаем, что он может загрузить всю страницу, возможно ли запустить скрипт как браузер?