scrapy
抓取数据时,利用itemloader
这个类,使用selector
取出的值为空时,进入scrapy.Field()
里调用filter()
,selector取值不为空的确返回"有值",如果selector
取出[]
或""
,那么value
进入filter()
사용 후 "값 없음"은 반환되지 않습니다
filter()를 전달한 후 캡처된 빈 값을 "값 없음"으로 변경할 수 있는 방법이 있나요?
仅有的幸福2017-05-27 17:41:47
초대해주셔서 감사합니다~
저는 Scrapy에 대해 잘 몰라서 주제에 대해 많이 말할 수 없습니다. 제가 직접 PHP로 작성한 크롤러의 일반적인 아이디어는 다음과 같습니다.
1. 규칙 및 일부 루프를 사용하여 수집할 페이지를 대기열에 넣고 카테고리 분류를 누릅니다(예: 페이지가 매겨진 목록 페이지용 대기열 및 목록의 데이터 콘텐츠 페이지용 대기열).
2. 그런 다음 xpath를 사용하여 관련 콘텐츠 페이지의 데이터를 크롤링합니다. 크롤링된 데이터 중 일부는 제목의 요구에 따라 처리됩니다.
3. 필요한 기준에 따라 데이터를 모으고 저장하세요.
대략 그렇습니다. 대부분의 크롤러 프레임워크는 아마도 이 아이디어를 바탕으로 안티 크롤링 메커니즘, 멀티스레딩, 멀티 프로세스, 증분 크롤링 및 기타 기능을 추가했을 뿐입니다. 따라서 질문자는 귀하의 프레임워크爬取数据那里进行处理或组装数据的地方进行处理都行
를 찾았습니다.