999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Scrapy、Spark和Hive的網絡數據采集、存儲與分析研究

2020-03-10 22:36:46劉守唯陳豪
科學與財富 2020年33期

劉守唯 陳豪

摘 要:本文主要利用目前主流的大數據工具,將網絡上的招聘職位數據采集之后,經過清洗整理等步驟,存入大數據倉庫中以備后續調用。研究記錄下整個過程及過程中遇到的問題和解決方案:采用Scrapy開源采集包,編寫Python采集程序,將數據成功存入數據倉庫Hive中,利用Sqoop將數據傳輸到MySQL,為后期數據展示做準備。該案例的典型工作過程與遇到的典型問題,可以為其他類似場合下采集、存儲和分析其他種類網絡數據的研究提供一些見解。

關鍵詞:Scrapy;Sqoop;Hive;大數據采集;大數據存儲

ABSTRACT: This paper mainly uses the current mainstream big data tools to collect the recruitment position data on the network, and then through the cleaning and sorting steps, stores them into the big data warehouse for subsequent calls. Research and record the whole process and the problems encountered in the process and solutions: using scrapy open source collection package, writing Python collection program, successfully storing the data in hive data warehouse, using sqoop to transfer the data to MySQL, preparing for the later data display. The typical working process and typical problems of this case can provide some insights for the research of collecting, storing and analyzing other kinds of network data in other similar situations.

Keywords: scratch; sqoop; hive; big data acquisition; big data storage

目前,計算機領域大數據技術發展迅猛,海量數據資源作為大數據技術的“礦藏”,是該技術能夠蓬勃發展的物質材料基礎。通過網絡采集數據是典型的大數據采集的手段之一,采集到的數據還需要“提純”,通過清洗步驟去除掉無用的空數據、錯數據及無效數據,然后存入數據倉庫,為后續的數據開發提供材料。導師給我們的選題,是編寫Python采集程序,使用主流的Scrapy技術進行數據采集,生成csv本地文件,然后用Spark對csv文件進行清洗;在Hive中利用create語句建立內部表的數據結構,之后用load命令將清洗后的csv導入到Hive中完成數據存儲。接下來就是編寫HQL語句對數據進行分析從而生成臨時顯示表,之后將該臨時表保存hive中內部表,然后在MySQL中建立對應的表結構,利用Sqoop將Hive里的數據傳輸進來,完成流程。在這個過程中我們解決掉各種問題,將的整合后統計數據成功提取到了結構化存儲中。導師給予的這個研究案例,是具有典型特征的工作過程,與解決掉的典型問題一起,可以應用在其他類似場合下采集與存儲其他種類網絡數據的工作中。

1網絡數據采集

Scrapy是使用最廣泛的網絡數據采集開源包之一。利用PyCharm IDE,配合安裝python3以上版本,并導入Scrapy的包。同時需要配合的重要的庫有:XML的處理工具包lxml,用于代碼結構解析;HTTP 請求urllib 庫,用于批量解析網址;fake_useragent庫,用于仿造瀏覽器請求;線程庫,用于多現程同時訪問提高采集效率。設計實現思路:仿造請求頭訪問進入目標網站;爬取目標網站各職位信息url;遍歷所有職位url再爬取各職位詳細信息url;向服務器發送請求并保存數據。具體來說,設定網址http://www.*****.com/zhaopin,偽造請求頭:headers = { ?'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:72.0) Gecko/20100101 Firefox/72.0'},發送含有偽造請求頭的請求,服務器返回response = requests.get(start_url,headers = HEADERS).text,再用lxml進行樹狀解析response = etree.HTML(response),抽取樹狀結構中的有效數據,傳遞到變量中。該過程循環多次,最終將所有有效數據存入文件中。

實現時,需添加隨機時間間隔來防止服務器屏蔽:通過Scrapy的settings文件的參數來實現,DOWNLOAD_DELAY = random.randint(2, 5),就是2秒到5秒鐘隨機抽取休息時間,模擬真實人的訪問頻率。要通過多線程來提高采集速度,具體到Scrapy中使用多并發、異步IO來實現,關鍵語句為:CONCURRENT_REQUESTS = 16 #多線程。還要注意的一個問題是:Scrapy默認是不采集網站不希望我們訪問的結點的,但往往有效數據就處于結點之上,所以必須關閉機器人協議,具體操作為修改設置:ROBOTSTXT_OBEY = False。最后,將采集到的數據寫入文件,通過Scrapy的items.py文件中,定義要保存的各個字段的名稱,之后再piplines的功能,打開要寫入的文件,調用process_item函數來對數據進行保存,寫入完畢后用close_spider函數關閉文件。

主站蜘蛛池模板: AⅤ色综合久久天堂AV色综合| 青草精品视频| 视频一区视频二区日韩专区| 成人日韩视频| 日本在线亚洲| 91久久国产热精品免费| 97青草最新免费精品视频| 亚洲成人高清在线观看| 天堂成人av| 欧美另类第一页| 国产美女视频黄a视频全免费网站| 中国毛片网| 亚洲最大看欧美片网站地址| 中美日韩在线网免费毛片视频| 制服丝袜一区二区三区在线| 成人国产精品2021| 99ri国产在线| 97色婷婷成人综合在线观看| 国产成人久久综合777777麻豆| 国产噜噜噜| 色综合日本| 成人精品午夜福利在线播放| 谁有在线观看日韩亚洲最新视频| 波多野结衣在线se| 国产真实乱子伦视频播放| 啪啪永久免费av| 无码日韩视频| 欧美亚洲综合免费精品高清在线观看| 国产91导航| 狼友av永久网站免费观看| 久热99这里只有精品视频6| 亚洲天堂精品在线观看| 91免费在线看| 3p叠罗汉国产精品久久| 狠狠亚洲五月天| 日韩黄色大片免费看| 欧美成人免费午夜全| 国产av一码二码三码无码| 久久精品只有这里有| 国产精品hd在线播放| 91精品国产福利| 亚洲精品视频免费观看| 99久久精品国产自免费| 国产成人盗摄精品| a国产精品| 久久这里只有精品23| 色AV色 综合网站| 国产成人在线无码免费视频| 国产尤物jk自慰制服喷水| 亚洲国产系列| 亚洲欧美另类久久久精品播放的| 国产成人精品亚洲77美色| 青青草国产在线视频| 国产精品网曝门免费视频| 日本一区二区三区精品视频| 国产麻豆永久视频| 国产精品9| 成人另类稀缺在线观看| 国产大片黄在线观看| 国产女人水多毛片18| 综合久久五月天| 99这里精品| 国内精品伊人久久久久7777人| 亚洲天堂.com| 日韩成人午夜| 不卡的在线视频免费观看| 呦女精品网站| 思思99思思久久最新精品| 99久久精彩视频| 天天做天天爱天天爽综合区| 久久精品一卡日本电影| 尤物视频一区| 亚洲美女一区二区三区| 国产精品嫩草影院av| 嫩草国产在线| 国产精品久久久久久久久kt| 国产精品伦视频观看免费| 26uuu国产精品视频| 欧美成人精品在线| 91丝袜在线观看| 国产精品黄色片| 亚洲精品日产精品乱码不卡|