파충류--여러 url 데이터 얻기
1950 단어 파충류여러 URL 수동 추가
요청된 수동 전송
pipelines.py class SecondPipeline(object):
f = None
def open_spider(self,spider):
print('start')
self.f = open('./qiubai.text','w',encoding='utf-8')
def process_item(self, item, spider):
self.f.write(item['author']+':'+ item['content'])
return item
def close_spider(self,spider):
self.f.close()
print('end')
qiubai.py import scrapy
from second.items import SecondItem
class QiubaiSpider(scrapy.Spider):
name = 'qiubai'
# allowed_domains = ['www.qiushibaike.com']
start_urls = ['https://www.qiushibaike.com/text/']
url = 'https://www.qiushibaike.com/text/page/%d/'
pageNum = 1
def parse(self, response):
print(' ')
div_list = response.xpath("//div[@id='content-left']/div")
for div in div_list:
author = div.xpath('./div/a[2]/h2/text()').extract_first()
content = div.xpath(".//div[@class='content']/span/text()").extract_first()
items = SecondItem()
items['author'] = author
items['content'] = content
yield items
# , url ,
# url,yield scrapy.Request,
# callback , , parse, (),
# url = 'https://www.qiushibaike.com/text/page/2/'
# yield scrapy.Request(url=url, callback=self.parse)
if self.pageNum <= 13:
self.pageNum += 1
new_url = format(self.url % self.pageNum)
yield scrapy.Request(url=new_url, callback=self.parse)
소결:
class SecondPipeline(object):
f = None
def open_spider(self,spider):
print('start')
self.f = open('./qiubai.text','w',encoding='utf-8')
def process_item(self, item, spider):
self.f.write(item['author']+':'+ item['content'])
return item
def close_spider(self,spider):
self.f.close()
print('end')
import scrapy
from second.items import SecondItem
class QiubaiSpider(scrapy.Spider):
name = 'qiubai'
# allowed_domains = ['www.qiushibaike.com']
start_urls = ['https://www.qiushibaike.com/text/']
url = 'https://www.qiushibaike.com/text/page/%d/'
pageNum = 1
def parse(self, response):
print(' ')
div_list = response.xpath("//div[@id='content-left']/div")
for div in div_list:
author = div.xpath('./div/a[2]/h2/text()').extract_first()
content = div.xpath(".//div[@class='content']/span/text()").extract_first()
items = SecondItem()
items['author'] = author
items['content'] = content
yield items
# , url ,
# url,yield scrapy.Request,
# callback , , parse, (),
# url = 'https://www.qiushibaike.com/text/page/2/'
# yield scrapy.Request(url=url, callback=self.parse)
if self.pageNum <= 13:
self.pageNum += 1
new_url = format(self.url % self.pageNum)
yield scrapy.Request(url=new_url, callback=self.parse)
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
python은 어떻게 파충류의 효율을 향상시킬 것인가단일 스레드 + 멀티태스킹 비동기 협동 협정 함수(특수 함수)를 정의할 때 async 수식을 사용합니다. 함수 호출 후 내부 문장은 즉시 실행되지 않고 협동 대상으로 되돌아옵니다. 퀘스트 대상 작업 대상 = 고급 협...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.