defparse_item(self, response): item = {} item["title"] = response.xpath("//div[@class='wzy1']//span[@class='niae2_top']/text()").get() item["content"] = response.xpath("//div[@class='wzy1'][1]/table[2]/tr[1]/td[1]//text()").extract() item["content"] = [re.sub(r"\xa0|\s|\r\n", "",i) for i in item["content"]] #去除\xa0和空格,美化输出格式 item["content"] = [i for i in item["content"] iflen(item["content"]) > 0] #去掉空元素 item["img"] = response.xpath("//div[@class='wzy1'][1]/table[2]/tr[1]/td[1]//img/@src").extract() item["img"] = ["http://wz.sun0769.com"+i for i in item["img"]] #补全url地址 print(item) return item
# Scrapy settings for yg project # # For simplicity, this file contains only settings considered important or # commonly used. You can find more settings consulting the documentation: # # https://docs.scrapy.org/en/latest/topics/settings.html # https://docs.scrapy.org/en/latest/topics/downloader-middleware.html # https://docs.scrapy.org/en/latest/topics/spider-middleware.html
LOG_LEVEL = 'WARNING' # Crawl responsibly by identifying yourself (and your website) on the user-agent #USER_AGENT = 'yg (+http://www.yourdomain.com)'
# Obey robots.txt rules ROBOTSTXT_OBEY = False
# Configure maximum concurrent requests performed by Scrapy (default: 16) #CONCURRENT_REQUESTS = 32
# Configure a delay for requests for the same website (default: 0) # See https://docs.scrapy.org/en/latest/topics/settings.html#download-delay # See also autothrottle settings and docs #DOWNLOAD_DELAY = 3 # The download delay setting will honor only one of: #CONCURRENT_REQUESTS_PER_DOMAIN = 16 #CONCURRENT_REQUESTS_PER_IP = 16
# Disable cookies (enabled by default) #COOKIES_ENABLED = False
# Disable Telnet Console (enabled by default) #TELNETCONSOLE_ENABLED = False
# Enable and configure the AutoThrottle extension (disabled by default) # See https://docs.scrapy.org/en/latest/topics/autothrottle.html #AUTOTHROTTLE_ENABLED = True # The initial download delay #AUTOTHROTTLE_START_DELAY = 5 # The maximum download delay to be set in case of high latencies #AUTOTHROTTLE_MAX_DELAY = 60 # The average number of requests Scrapy should be sending in parallel to # each remote server #AUTOTHROTTLE_TARGET_CONCURRENCY = 1.0 # Enable showing throttling stats for every response received: #AUTOTHROTTLE_DEBUG = False
# Enable and configure HTTP caching (disabled by default) # See https://docs.scrapy.org/en/latest/topics/downloader-middleware.html#httpcache-middleware-settings #HTTPCACHE_ENABLED = True #HTTPCACHE_EXPIRATION_SECS = 0 #HTTPCACHE_DIR = 'httpcache' #HTTPCACHE_IGNORE_HTTP_CODES = [] #HTTPCACHE_STORAGE = 'scrapy.extensions.httpcache.FilesystemCacheStorage'
item["content"] = response.xpath("//div[@class='wzy1'][1]/table[2]/tr[1]/td[1]//text()").extract() item["content"] = [re.sub(r"\xa0|\s|\r\n", "",i) for i in item["content"]] #去除\xa0和空格,美化输出格式 item["content"] = [i for i in item["content"] iflen(item["content"]) > 0] #去掉空元素