import scrapy
from scrapy.pipelines.images import imagespipeline
from scrapy.exceptions import dropitem
class myimagespipeline(imagespipeline):
def get_media_requests(self, item, info):
for image_url in item['image_urls']:
yield scrapy.request(image_url)
def item_completed(self, results, item, info):
image_paths = [x['path'] for ok,x in results if ok]
if not image_paths:
raise dropitem("item contains no images")
item['image_paths'] = image_paths
return item
item_pipelines = #啟用
files_store = '/path/to/valid/dir' #檔案管道存放位置
images_store = '/path/to/valid/dir' #管道存放位置
files_urls_field = 'field_name_for_your_files_urls' #自定義檔案url欄位
files_result_field = 'field_name_for_your_processed_files' #自定義結果字段
images_urls_field = 'field_name_for_your_images_urls' #自定義url欄位
images_result_field = 'field_name_for_your_processed_images' #結果字段
files_expires = 90 #檔案過期時間,預設90天
images_expires = 90 #過期時間,預設90天
images_thumbs = #縮圖尺寸
images_min_height = 110 #過濾最小高度
images_min_width = 110 #過濾最小寬度
media_allow_redirects = true #是否重定向
大資料09 Hive表的操作(未整理完)
分桶表函式 hive shell的常用操作 create table gfstbl id int name string,age int gfs array address map info struct row format delimited fields terminated by colle...
kafka生產者和消費者(未整理完,待續)
1 分割槽的原因 a 方便在集群中擴充套件 每個partition可以通過調整以適應它所在的機器,而乙個topic又可以有多個partition組成,因此整個集群就可以適應任意大小的資料了 b 提高併發 可以以partition為單位讀寫 2 分割槽的原則 我們需要將producer傳送的資料封裝成...
草稿 未整理
async和defer 1 defer defer 和async true false html4.0中定義了defer html5.0中定義了async。1 沒有defer或async,瀏覽器會立即載入並執行指定的js指令碼,也就是說,不等待後續載入的文件元素,讀到js指令碼就載入並執行。2 有a...