我正在尝试废弃网络内容,而我正在使用Scrapy。我已经多次使用该工具并且它总是运行良好,但现在它已停止为该网站之一" https://careers.dexcom.com/search-results"。
当您访问此网页时,您会看到有一个" li"使用class" jobs-list-item",当我尝试使用此选择器获取数据时,它什么都没有。
这是你到目前为止尝试过的代码:
import scrapy
class BrickSetSpider(scrapy.Spider):
name = 'brick_spider'
start_urls = ['http://careers.dexcom.com/search-results']
def parse(self, response):
SET_SELECTOR = '.jobs-list-item'
for brickset in response.css(SET_SELECTOR):
print "****************here we go****************"
"""
NAME_SELECTOR = 'h1 a ::text'
yield {
'name': brickset.css(NAME_SELECTOR).extract_first()
}
"""
答案 0 :(得分:2)
不,"页面"在Scrapy的背景下,没有" li"与班级" jobs-list-item"因为它是纯HTML响应,而列表项使用Ajax加载。
要查看Scrapy看到的页面,请使用scrapy shell http://careers.dexcom.com/search-results
,然后在控制台中输入view(response)
。
要解析作业提要,您需要使用类似Splash的内容(我认为这是开销),或者只需找到Ajax提要URL,请求它并解析JSON响应。