精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

數(shù)據(jù)分析行業(yè)薪資的秘密,你想知道的都在這里(2)

大數(shù)據(jù) 數(shù)據(jù)分析
數(shù)據(jù)分析師的收入怎么樣?哪些因素對(duì)于數(shù)據(jù)分析的薪資影響最大?哪些行業(yè)對(duì)數(shù)據(jù)分析人才的需求量最高?我想跳槽,應(yīng)該選擇大公司大平臺(tái)還是初創(chuàng)的小公司?按我目前的教育程度,工作經(jīng)驗(yàn),和掌握的工具和技能,能獲得什么樣水平的薪資呢?

[[200053]]

接上篇:數(shù)據(jù)分析行業(yè)薪資的秘密,你想知道的都在這里(1)

第二部分:職位信息清洗及數(shù)據(jù)提取

數(shù)據(jù)分析師的收入怎么樣?哪些因素對(duì)于數(shù)據(jù)分析的薪資影響***?哪些行業(yè)對(duì)數(shù)據(jù)分析人才的需求量***?我想跳槽,應(yīng)該選擇大公司大平臺(tái)還是初創(chuàng)的小公司?按我目前的教育程度,工作經(jīng)驗(yàn),和掌握的工具和技能,能獲得什么樣水平的薪資呢?

我們使用python抓取了2017年6月26日拉鉤網(wǎng)站內(nèi)搜索“數(shù)據(jù)分析”關(guān)鍵詞下的450條職位信息。通過對(duì)這些職位信息的分析和建模來給你答案。

本系列文章共分為五個(gè)部分,分別是數(shù)據(jù)分析職位信息抓取,數(shù)據(jù)清洗及預(yù)處理,數(shù)據(jù)分析職位分布分析,數(shù)據(jù)分析薪資影響因素分析,以及數(shù)據(jù)建模和薪資預(yù)測(cè)。這是第二篇:職位信息清洗及數(shù)據(jù)提取。

第二篇文章是對(duì)獲取的數(shù)據(jù)進(jìn)行清洗,預(yù)處理和特征提取。在***篇文章中我們抓取了拉勾網(wǎng)的450條職位信息及職位描述。但這些信息無法直接用于數(shù)據(jù)分析,我們需要對(duì)抓取到的信息進(jìn)行清洗,規(guī)范現(xiàn)有數(shù)據(jù)的格式,提取信息中的數(shù)據(jù)及特征,為后續(xù)的數(shù)據(jù)分析和建模做準(zhǔn)備。下面開始介紹苦逼的

數(shù)據(jù)清洗流程介紹。

數(shù)據(jù)清洗前的準(zhǔn)備工作

首先是開始前的準(zhǔn)備工作,導(dǎo)入所需要的庫(kù)文件,包括常用的numpy和pandas庫(kù)用于計(jì)算平均薪資以及對(duì)字符進(jìn)行分列等操作,正則表達(dá)式re庫(kù)用于字符的查找和替換操作,結(jié)巴分詞庫(kù)jieba用于對(duì)職位描述進(jìn)行分詞操作,自然語(yǔ)言處理nltk庫(kù)用于計(jì)算職位描述的文字豐富度指標(biāo),還有KMeans用于對(duì)平均

薪資進(jìn)行聚類操作。

  1. #導(dǎo)入所需庫(kù)文件 
  2. import re 
  3. import numpy as np 
  4. import pandas as pd 
  5. import jieba as jb 
  6. import jieba.analyse 
  7. import jieba.posseg as pseg 
  8. import nltk 
  9. from sklearn import preprocessing 
  10. from sklearn.cluster import KMeans  

導(dǎo)入我們之前抓取并保存的數(shù)據(jù)表,并查看數(shù)據(jù)表的維度以及各字段名稱。后面我們會(huì)經(jīng)常使用這些字段名稱。

  1. #導(dǎo)入之前抓取并保存的數(shù)據(jù)表 
  2. lagou=pd.DataFrame(pd.read_csv('lagou_data_analysis_2017-06-26.csv',header=0,encoding='GBK')) 
  3.   
  4. #查看數(shù)據(jù)表維度及字段名稱 
  5. lagou.columns,lagou.shape  

 

職位信息清洗及預(yù)處理

開始對(duì)職位信息的各個(gè)字段進(jìn)行清洗和預(yù)處理,主要清洗的內(nèi)容包括文本信息提取和處理,內(nèi)容搜索和替換,字段內(nèi)的空格處理,數(shù)值信息提取和計(jì)算,英文字母統(tǒng)一大小寫等等。我們將先展示清洗前的原始字段,然后在展示清洗后的新字段內(nèi)容。

行業(yè)字段清洗及處理

***個(gè)清洗的字段是行業(yè)字段,抓取到的行業(yè)字段比較混亂,有些只有一個(gè)行業(yè)名稱,有些則有兩級(jí)的行業(yè)名稱。我們保留行業(yè)字段***部分的信息,對(duì)有兩部分行業(yè)名稱的字段取前一個(gè)。

  1. #查看原始industryField字段信息 
  2.  
  3. lagou[['industryField']].head()  

 

由于行業(yè)名稱之間有的以頓號(hào)分割,有的以逗號(hào)分割,我們先將所有的分隔符統(tǒng)一為逗號(hào),然后對(duì)這個(gè)字段進(jìn)行分列。并將分列后的字段重新拼接回原數(shù)據(jù)表中。

  1. #對(duì)industryField字段進(jìn)行清洗及分列 
  2. #創(chuàng)建list存儲(chǔ)清洗后的行業(yè)字段 
  3. industry=[] 
  4. #將頓號(hào)分隔符替換為逗號(hào) 
  5. for x in lagou['industryField']: 
  6.     c=x.replace("、"","
  7.     industry.append(c) 
  8. #替換后的行業(yè)數(shù)據(jù)改為Dataframe格式     
  9. industry=pd.DataFrame(industry,columns=["industry"]) 
  10. #對(duì)行業(yè)數(shù)據(jù)進(jìn)行分列 
  11. industry_s=pd.DataFrame((x.split(','for x in industry["industry"]),index=industry["industry"].index,columns=['industry_1','industry_2']) 
  12. #將分列后的行業(yè)信息匹配回原數(shù)據(jù)表 
  13. lagou=pd.merge(lagou,industry_s,right_index=True, left_index=True
  14. #清除字段兩側(cè)空格 
  15. lagou["industry_1"]=lagou["industry_1"].map(str.strip)  

以下是清洗后的行業(yè)字段。

  1. #查看清洗后的行業(yè)字段 
  2.  
  3. lagou[["industry_1","industry_2"]].head() 

 

 

融資階段字段清洗及處理

第二個(gè)清洗的字段是融資階段字段,抓取下來的原始信息中對(duì)融資階段進(jìn)行了雙重標(biāo)識(shí),例如成長(zhǎng)型(A輪)。由于***個(gè)標(biāo)識(shí)”成長(zhǎng)型”定義比較寬泛,我們提取第二個(gè)括號(hào)中的標(biāo)識(shí)。

  1. #查看清洗前的financeStage字段 
  2.  
  3. lagou[['financeStage']].head()  

 

首先建立一個(gè)字典,將數(shù)據(jù)表中融資階段的每一條信息與字典中的Key進(jìn)行查找。如果融資階段信息中包含字典中的任何一個(gè)key,我們就把這個(gè)key對(duì)應(yīng)的value記錄下來。

  1. #提取并處理financeStage中的融資信息 
  2. #創(chuàng)建一個(gè)字典 
  3. f_dict = {'未融資':'未融資'
  4.           '天使輪':'天使輪'
  5.           'A輪':'A輪'
  6.           'B輪':'B輪'
  7.           'C輪':'C輪'
  8.           'D輪':'D輪'
  9.           '不需要':'不需要融資'
  10.           '上市公司':'上市公司' 
  11.           } 
  12. #創(chuàng)建list存儲(chǔ)清洗后的信息 
  13. financeStage2=[] 
  14. #逐一提取financeStage字段中的每一條信息 
  15. for i in range(len(lagou['financeStage'])): 
  16.     #逐一提取字典中的每一條信息 
  17.     for (key, value) in f_dict.items(): 
  18.         #判斷financeStage字段中是否包含字典中的任意一個(gè)key 
  19.         if key in lagou['financeStage'][i]: 
  20.             #如何包含某個(gè)key,則把對(duì)應(yīng)的value保存在list中 
  21.             financeStage2.append(value) 
  22. #把新保存的list添加到原數(shù)據(jù)表中             
  23. lagou["financeStage1"]=financeStage2  
  1. #查看清洗后的financeStage字段 
  2.  
  3. lagou[["financeStage1"]].head() 

 

職位名稱字段清洗及處理

第三個(gè)清洗的字段是職位名稱,這里我們要提取職位里的title信息。沒有title信息的都統(tǒng)一歸為其他。具體方法是將每個(gè)職位名稱與現(xiàn)有的title列表逐一判斷,如果職位名稱中含有title關(guān)鍵字就被劃分到這個(gè)類別下。否則被歸為其他類。

  1. #查看清洗前的positionName字段 
  2.  
  3. lagou[['positionName']].head()  

  

  1. #提取并處理positionName中的職位信息 
  2. #創(chuàng)建list存儲(chǔ)清洗后的信息 
  3. positionName3=[] 
  4. #對(duì)職位名稱進(jìn)行判斷歸類 
  5. for i in range(len(lagou['positionName'])): 
  6.     if '實(shí)習(xí)' in lagou['positionName'][i]: 
  7.         positionName3.append("實(shí)習(xí)"
  8.     elif '助理' in lagou['positionName'][i]: 
  9.         positionName3.append("助理"
  10.     elif '專員' in lagou['positionName'][i]: 
  11.         positionName3.append("專員"
  12.     elif '主管' in lagou['positionName'][i]: 
  13.         positionName3.append("主管"
  14.     elif '經(jīng)理' in lagou['positionName'][i]: 
  15.         positionName3.append("經(jīng)理"
  16.     elif '專家' in lagou['positionName'][i]: 
  17.         positionName3.append("專家"
  18.     elif '總監(jiān)' in lagou['positionName'][i]: 
  19.         positionName3.append("總監(jiān)"
  20.     elif '工程師' in lagou['positionName'][i]: 
  21.         positionName3.append("工程師"
  22.     else
  23.         #以上關(guān)鍵詞都不包含的職位歸為其他 
  24.         positionName3.append("其他"
  25. #把新保存的list添加到原數(shù)據(jù)表中         
  26. lagou["positionName1"]=positionName3  
  1. #查看清洗后的positionName字段 
  2.  
  3. lagou[["positionName1"]].head()  

 

薪資范圍字段清洗及處理

第四個(gè)清洗的字段是薪資范圍。抓取到的數(shù)據(jù)中薪資范圍是一個(gè)區(qū)間值,比較分散,無法直接使用。我們對(duì)薪資范圍進(jìn)行清洗,去掉無關(guān)的信息并只保留薪資上限和下限兩個(gè)數(shù)字,然后使用這兩個(gè)數(shù)字計(jì)算出平均薪資值。

  1. #查看清洗前的salary字段 
  2.  
  3. lagou[['salary']].head()  

 

  1. #提取并計(jì)算平均薪資 
  2. #創(chuàng)建list用于存儲(chǔ)信息 
  3. salary1=[] 
  4. #對(duì)salary字段進(jìn)行清洗 
  5. for i in lagou['salary']: 
  6.     #設(shè)置要替換的正則表達(dá)式k|K 
  7.     p = re.compile("k|K"
  8.     #按正則表達(dá)式對(duì)salary字段逐條進(jìn)行替換(替換為空) 
  9.     salary_date = p.sub("", i) 
  10.     #完成替換的信息添加到前面創(chuàng)建的新list中 
  11.     salary1.append(salary_date) 
  12. #將清洗后的字段合并到原數(shù)據(jù)表中 
  13. lagou['salary1']=salary1 
  14. #對(duì)薪資范圍字段進(jìn)行分列 
  15. salary_s=pd.DataFrame((x.split('-'for x in lagou['salary1']),index=lagou['salary1'].index,columns=['s_salary1','e_salary1']) 
  16. #更改字段格式 
  17. salary_s['s_salary1']=salary_s['s_salary1'].astype(int
  18. #更改字段格式 
  19. salary_s['e_salary1']=salary_s['e_salary1'].astype(int 
  1. #計(jì)算平均薪資 
  2.  
  3. #創(chuàng)建list用于存儲(chǔ)平均薪資 
  4.  
  5. salary_avg=[] 
  6.  
  7. #逐一提取薪資范圍字段 
  8.  
  9. for i in range(len(salary_s)): 
  10.  
  11. #對(duì)每一條信息字段計(jì)算平均薪資,并添加到平均薪資list中。 
  12.  
  13. salary_avg.append((salary_s['s_salary1'][i] + salary_s['e_salary1'][i])/2) 
  14.  
  15. #將平均薪資拼接到薪資表中 
  16.  
  17. salary_s['salary_avg']=salary_avg 
  18.  
  19. #將薪資表與原數(shù)據(jù)表進(jìn)行拼接 
  20.  
  21. lagou=pd.merge(lagou,salary_s,right_index=True, left_index=True 
  1. #查看清洗以后的salary_avg字段 
  2.  
  3. lagou[["salary_avg"]].head()  

 

職位信息中的數(shù)據(jù)提取

在職位描述字段中,包含了非常詳細(xì)和豐富的信息。比如數(shù)據(jù)分析人才的能力要求和對(duì)各種數(shù)據(jù)分析工具的掌握程度等。我們對(duì)這個(gè)字段的一些特征進(jìn)行指標(biāo)化,對(duì)有價(jià)值的信息進(jìn)行提取和統(tǒng)計(jì)。

職位描述字段中的數(shù)據(jù)提取

第五個(gè)清洗的字段是職位描述,準(zhǔn)確的說從職位描述字段中提取信息。職位描述中包含了大量關(guān)于職位信息,工作內(nèi)容,和個(gè)人能力方面的信息,非常有價(jià)值。但無法直接拿來使用。需要進(jìn)行信息提取。我們將對(duì)職位描述字段進(jìn)行三方面的信息提取。

***是提取職位描述中對(duì)于個(gè)人能力的要求,換句話說就是數(shù)據(jù)分析人員使用工具的能力。我們整理了10個(gè)最常見的數(shù)據(jù)分析工具。來看下每個(gè)職位描述中都出行了哪些工具名稱。由于一些工具間存在可替代性,所以每個(gè)職位描述中可能會(huì)出現(xiàn)多個(gè)工具的名稱。沒出現(xiàn)一個(gè)工具名稱,我們就會(huì)在相應(yīng)的工具下表示1,如果沒有出現(xiàn)則標(biāo)識(shí)為0。

  1. #查看清洗以前的job_detail字段 
  2.  
  3. lagou[['job_detail']].head()  

 

  1. #提取職位描述字段,并對(duì)英文統(tǒng)一轉(zhuǎn)化為小寫 
  2. lagou['job_detail']=lagou['job_detail'].map(str.lower
  3. #提取職位描述中的工具名稱 
  4. tools=['sql','python','excel','spss','matlab','sas','r','hadoop','spark','tableau'
  5. #創(chuàng)建list用于存儲(chǔ)數(shù)據(jù) 
  6. tool=np.array([[0 for i in range(len(tools))] for j in range(len((lagou['job_detail'])))]) 
  7. #逐一提取職位描述信息 
  8. for i in range(len(lagou['job_detail'])): 
  9.     #逐一提取工具名稱 
  10.     for t in tools: 
  11.         #獲得工具名稱的索引位置(第幾個(gè)工具) 
  12.         index=tools.index(t) 
  13.         #判斷工具名稱是否出現(xiàn)在職位描述中 
  14.         if t in lagou['job_detail'][i]: 
  15.             #如果出現(xiàn),在該工具索引位置(列)填1 
  16.             tool[i][index]=1 
  17.         else
  18.             #否則在該工具索引位置(列)填0 
  19.             tool[i][index]=0 
  20. #將獲得的數(shù)據(jù)轉(zhuǎn)換為Dataframe格式             
  21. analytics_tools=pd.DataFrame(tool,columns=tools) 
  22. #按行(axis=1)對(duì)每個(gè)職位描述中出現(xiàn)的工具數(shù)量進(jìn)行求和 
  23. tool_num=analytics_tools.sum(axis=1) 
  24. #將工具數(shù)量求和拼接到原數(shù)據(jù)表中 
  25. analytics_tools["tool_num"]=tool_num 
  26. #將表與原數(shù)據(jù)表進(jìn)行拼接 
  27. lagou=pd.merge(lagou,analytics_tools,right_index=True, left_index=True 
  1. #查看從job_detail中提取的分析工具信息 
  2.  
  3. lagou[['sql','python','excel','spss','matlab','sas','r','hadoop','spark','tableau','tool_num']].head()  

 

職位描述所使用的字?jǐn)?shù)統(tǒng)計(jì)

第二是計(jì)算職位描述所使用的字?jǐn)?shù),我們猜測(cè)初級(jí)簡(jiǎn)單的工作描述會(huì)比較簡(jiǎn)單,而高級(jí)復(fù)雜的工作描述則會(huì)更復(fù)雜一些。因此職位描述中不同的字?jǐn)?shù)里也可能隱藏著某種信息或關(guān)聯(lián)。 

  1. #計(jì)算職位描述的字?jǐn)?shù) 
  2. #創(chuàng)建list用于存儲(chǔ)新數(shù)據(jù) 
  3. jd_num=[] 
  4. #逐一提取職位描述信息 
  5. for i in range(len(lagou['job_detail'])): 
  6.     #轉(zhuǎn)換數(shù)據(jù)格式(list轉(zhuǎn)換為str) 
  7.     word_str = ''.join(lagou['job_detail'][i]) 
  8.     #對(duì)文本進(jìn)行分詞 
  9.     word_split = jb.cut(word_str) 
  10.     #使用|分割結(jié)果并轉(zhuǎn)換格式 
  11.     word_split1 = "| ".join(word_split) 
  12.     #設(shè)置字符匹配正則表達(dá)式 
  13.     pattern=re.compile('\w'
  14.     #查找分詞后文本中的所有字符并賦值給word_w 
  15.     word_w=pattern.findall(word_split1) 
  16.     #計(jì)算word_w中字符數(shù)量并添加到list中 
  17.     jd_num.append(len(word_w)) 
  18. #對(duì)字符數(shù)量進(jìn)行歸一化     
  19. min_max_scaler = preprocessing.MinMaxScaler() 
  20. min_max_jd_num = min_max_scaler.fit_transform(jd_num) 
  21. #將歸一化的數(shù)據(jù)添加到原數(shù)據(jù)表中 
  22. lagou['jd_num']=min_max_jd_num  
  1. #查看職位描述字?jǐn)?shù) 
  2.  
  3. jd_num[:10]  

 

  1. #查看歸一化的職位描述字段 
  2.  
  3. lagou[['jd_num']].head()  

 

職位描述的詞匯豐富度統(tǒng)計(jì)

第三是計(jì)算職位描述中的文字豐富度指標(biāo)。和前面的字?jǐn)?shù)統(tǒng)計(jì)一樣。初級(jí)職位所對(duì)應(yīng)的工作會(huì)相對(duì)簡(jiǎn)單,在描述上也會(huì)比較簡(jiǎn)單。高級(jí)職位則可能需要更詳細(xì)的和負(fù)責(zé)的描述。因此文字豐富度指標(biāo)上也會(huì)更高一些。

  1. #計(jì)算職位描述文字豐富度 
  2. #創(chuàng)建新list用于存儲(chǔ)數(shù)據(jù) 
  3. diversity=[] 
  4. #逐一提取職位描述信息 
  5. for i in range(len(lagou['job_detail'])): 
  6.     #轉(zhuǎn)換數(shù)據(jù)格式(list轉(zhuǎn)換為str) 
  7.     word_str = ''.join(lagou['job_detail'][i]) 
  8.     #將文本中的英文統(tǒng)一轉(zhuǎn)化為小寫 
  9.     word_str=word_str.lower() 
  10.     #查找職位描述中的所有中文字符 
  11.     word_list=re.findall(r'[\u4e00-\u9fa5]', word_str) 
  12.     #轉(zhuǎn)換數(shù)據(jù)格式(list轉(zhuǎn)換為str) 
  13.     word_str1=''.join(word_list) 
  14.     #對(duì)文本進(jìn)行分詞 
  15.     word_split = jb.cut(word_str1) 
  16.     #使用空格分割結(jié)果并轉(zhuǎn)換格式 
  17.     word_split1 = " ".join(word_split) 
  18.     #使用nltk對(duì)句子進(jìn)行分詞 
  19.     tokens = nltk.word_tokenize(word_split1) 
  20.     #轉(zhuǎn)化為text對(duì)象 
  21.     text = nltk.Text(tokens) 
  22.     #計(jì)算職位描述的文字豐富度(唯一詞/所有詞) 
  23.     word_diversity=len(set(text)) / len(text) 
  24.     #將文本詞匯豐富度數(shù)據(jù)添加到list中 
  25.     diversity.append(word_diversity) 
  26. #將文字豐富度匹配到原數(shù)據(jù)表中    
  27. lagou["diversity"]=diversity  
  1. #查看職位描述豐富度字段 
  2.  
  3. lagou[["diversity"]].head() 

 

對(duì)數(shù)據(jù)分析的薪資進(jìn)行聚類

完成清洗和數(shù)據(jù)提取后,平均薪資已經(jīng)比薪資范圍要具體的多了,但仍然比較離散。我們對(duì)這些平均薪資進(jìn)行聚類來支持后面的建模和預(yù)測(cè)工作。以下是具體的代碼和聚類結(jié)果。我們將類別標(biāo)簽添加到原始數(shù)據(jù)表中。

  1. #提取平均工作年限,平均薪資和平均公司規(guī)模字段 
  2. salary_type = np.array(lagou[['salary_avg']]) 
  3. #進(jìn)行聚類分析 
  4. clf=KMeans(n_clusters=3) 
  5. #訓(xùn)練模型 
  6. clf=clf.fit(salary_type) 
  7. #將距離結(jié)果標(biāo)簽合并到原數(shù)據(jù)表中 
  8. lagou['cluster_label']= clf.labels_ 
  9. #輸出聚類結(jié)果 
  10. clf.cluster_centers_  

 

聚類后平均薪資被分為三個(gè)類別,第1類是薪資均值為19.3K的區(qū)間,分類標(biāo)記為0。第二類是薪資均值為8.2K的區(qū)間,分類標(biāo)記為1,。第三類是薪資均值為32.1的區(qū)間,分類標(biāo)記為3。

  1. #對(duì)平均薪資進(jìn)行聚類預(yù)測(cè) 
  2. clf.predict(9),clf.predict(25),clf.predict(30)  

 

  1. #查看數(shù)據(jù)表中的類別標(biāo)識(shí)字段 
  2.  
  3. lagou[['salary_avg','cluster_label']].head()  

 

查看清洗及處理后的數(shù)據(jù)表

到這里我們完成了對(duì)450個(gè)職位信息的字段清洗和數(shù)據(jù)提取工作。下面我們?cè)賮聿榭聪聰?shù)據(jù)表的維度,名稱以及數(shù)據(jù)表中的數(shù)據(jù)。在下一篇文章中我們將使用這個(gè)數(shù)據(jù)表對(duì)數(shù)據(jù)分析職位的分布情況以及薪資的影響因素進(jìn)行分析,并通過建模對(duì)薪資收入進(jìn)行預(yù)測(cè)。

  1. #查看數(shù)據(jù)表維度及字段名稱 
  2.  
  3. lagou.columns,lagou.shape 

 

  1. #查看清洗完的數(shù)據(jù)表 
  2.  
  3. lagou.head() 

 

本篇文章我們對(duì)抓取到的職位信息進(jìn)行了清洗和數(shù)據(jù)提取。數(shù)據(jù)清洗是一個(gè)苦逼的工作,但卻是分析和建模過程中必不可少的一個(gè)步驟。經(jīng)過清洗后我們就可以對(duì)職位數(shù)據(jù)進(jìn)行分析和建模了,后面的文章中我們將從職位需求分布和薪資影響因素兩個(gè)方面進(jìn)行分析,并在***對(duì)數(shù)據(jù)分析行業(yè)的薪資進(jìn)行建模,對(duì)薪資分類和具體的薪資值進(jìn)行預(yù)測(cè)。請(qǐng)繼續(xù)關(guān)注。 

責(zé)任編輯:龐桂玉 來源: 36大數(shù)據(jù)
相關(guān)推薦

2017-08-15 15:35:21

大數(shù)據(jù)數(shù)據(jù)分析薪資秘密

2023-09-11 08:51:23

LinkedList雙向鏈表線程

2019-11-04 09:07:48

DevOps互聯(lián)網(wǎng)IT

2021-06-17 13:40:47

區(qū)塊鏈比特幣公有鏈

2020-03-18 18:20:19

區(qū)塊鏈數(shù)字貨幣比特幣

2019-04-24 08:31:43

分布式限流kafka

2018-11-28 10:39:01

5G網(wǎng)絡(luò)運(yùn)營(yíng)商

2021-07-01 09:00:00

安全數(shù)字化轉(zhuǎn)型滲透

2018-03-31 08:45:52

iPhone交通卡iOS 11.3

2019-04-26 09:38:36

中臺(tái)平臺(tái)化轉(zhuǎn)型

2022-11-08 15:55:34

鴻蒙開發(fā)套件

2021-02-23 09:28:48

大數(shù)據(jù)數(shù)據(jù)分析

2017-01-11 08:37:07

Apache SparStreamingDataFrames

2021-07-02 14:09:36

開發(fā)技能代碼

2015-10-12 15:50:40

2017-12-13 14:24:08

Google 開發(fā)者瀏覽器

2018-05-10 08:50:31

AndroidGoogle 移動(dòng)系統(tǒng)

2019-10-29 15:28:40

Refs組件前端

2018-08-23 11:58:53

區(qū)塊鏈數(shù)字貨幣比特幣

2022-09-15 14:22:19

協(xié)作規(guī)范前后端
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

色综合狠狠操| 一区二区精品伦理...| 激情国产一区二区| 欧美黑人国产人伦爽爽爽| jjzz黄色片| 中文在线8资源库| 中文字幕在线一区二区三区| 成人在线观看网址| 亚洲 欧美 日韩 在线| 婷婷亚洲五月色综合| 精品国产乱码久久久久久久久 | 超碰97在线免费观看| 日韩毛片免费观看| ㊣最新国产の精品bt伙计久久| 高清不卡一区二区三区| 999视频在线| 欧美精品一线| 国产亚洲美女久久| 毛茸茸free性熟hd| 色诱色偷偷久久综合| 香蕉加勒比综合久久| 天堂av一区二区| 欧美性猛交 xxxx| 九一久久久久久| 欧洲精品在线视频| 亚洲国产精品久| 精品一区不卡| 亚洲精品乱码久久久久久按摩观| 女人高潮一级片| 美女福利一区二区| 亚洲高清免费在线| 国产日韩欧美大片| av电影在线观看| 久久无码av三级| 97在线日本国产| 超碰手机在线观看| 日韩精品免费| 亚洲香蕉成视频在线观看 | 欧美影院在线| 欧美日韩高清在线播放| 久久精品网站视频| jizz内谢中国亚洲jizz| 午夜精品免费在线观看| 成人黄色片免费| av免费网站在线观看| 国产精品网站在线| 日韩在线国产| 户外极限露出调教在线视频| 91美女福利视频| 精品欧美一区二区在线观看视频| 好男人在线视频www| 国产一区二区女| 成人在线视频网| 亚洲视频一区在线播放| 日本午夜一区二区| 国产精品美乳一区二区免费| 久久久久久久久久一级| 久久久精品午夜少妇| 青青在线视频一区二区三区| 国产精品男女视频| 久久精品电影| 国产国语videosex另类| 99久久久无码国产精品免费蜜柚| 小嫩嫩精品导航| 清纯唯美亚洲激情| 中文字幕精品一区二| 美女网站一区二区| 成人a在线观看| 国产日韩欧美中文字幕| 国产精品亚洲成人| 成人国产1314www色视频| 刘亦菲久久免费一区二区| 国产高清不卡一区二区| 国产日韩一区二区| 免费福利在线视频| 国产精品国产三级国产专播品爱网 | 精品国产99久久久久久宅男i| 国产成人免费视频精品含羞草妖精| 亚洲最大的av网站| 噜噜噜久久,亚洲精品国产品| eeuss影院一区二区三区| 蜜桃麻豆www久久国产精品| www.av在线| 亚洲欧美日韩在线| 日韩视频免费播放| 日本少妇一区| 91精品国产综合久久久蜜臀粉嫩| 永久看看免费大片| 天天操综合520| 欧美日韩高清一区二区不卡| 91免费视频污| 欧洲在线一区| 色悠悠久久88| 国产黄色片视频| 日韩成人伦理电影在线观看| 91久久中文字幕| 天天射天天操天天干| 国产日韩精品视频一区| 小泽玛利亚av在线| 中文字幕在线中文字幕在线中三区| 欧美系列一区二区| 任你躁av一区二区三区| 欧洲三级视频| 欧美黑人一级爽快片淫片高清| 91玉足脚交嫩脚丫在线播放| 狠狠色伊人亚洲综合成人| 精品国产一区二区三区麻豆免费观看完整版 | 日韩欧美不卡| 97av视频在线| 国产男女无套免费网站| 久久免费国产精品| 久久久久久久香蕉| 欧美黑粗硬大| 亚洲美女av网站| 青娱乐国产盛宴| 免费欧美在线视频| 九色91视频| 91网在线看| 欧美日韩三级视频| 欧洲一级黄色片| 中文字幕一区二区三区乱码图片| 日韩女在线观看| 天堂在线视频免费| 一区二区三区四区蜜桃| 亚洲国产精品三区| 美女亚洲一区| 亚洲乱码国产乱码精品精| 老湿机69福利| 麻豆免费看一区二区三区| 蜜桃传媒视频麻豆一区| 国产高清中文字幕在线| 日韩欧美综合在线| 久久福利免费视频| 日韩av在线免费观看不卡| 久久久久久国产精品免费免费| 亚洲综合图区| 91精品国产入口| 任你操精品视频| 日韩成人一区二区三区在线观看| 蜜桃精品久久久久久久免费影院| www.综合| 亚洲精品国产福利| 精品在线视频观看| 国产 日韩 欧美大片| 在线视频不卡一区二区三区| 欧美日韩精品一区二区三区视频| 日韩精品视频在线免费观看| 看片网址国产福利av中文字幕| 成人激情免费电影网址| 日本福利视频一区| 国产精品115| 97热在线精品视频在线观看| 亚洲免费一级片| 亚洲国产精品一区二区www在线| 精品国产aⅴ一区二区三区东京热| 永久91嫩草亚洲精品人人| 91亚洲人电影| 四虎影视成人| 亚洲精品一区二区三区精华液 | 亚洲一区二区在线| 久草中文在线| 日韩视频免费观看高清完整版| 夫妻性生活毛片| 国产精品亚洲成人| 成人免费视频91| 亚洲三级精品| 国产精品久久久一区| 免费在线观看av网站| 555www色欧美视频| 久久成人在线观看| 99久久精品免费观看| 美女福利视频在线| 亚洲av鲁丝一区二区三区| 三级男人添奶爽爽爽视频| xxxxx99| 黄色在线观看免费| 日本美女一区| 国产视频久久网| 波多野结衣家庭主妇| 亚洲国产精品二十页| √天堂资源在线| 在线免费观看亚洲| 夜色激情一区二区| 欧美激情 亚洲| 免费久久99精品国产自在现线| 日韩不卡av| 国产欧美视频在线| 97精品视频在线| 成人好色电影| 日韩视频免费观看高清在线视频| 成年人免费看毛片| 国产精品视频一二三| 色哟哟网站在线观看| 麻豆91精品| 看全色黄大色大片| www免费在线观看| 亚洲成人在线网| 中文字字幕在线观看| 一区2区3区在线看| 在线观看日本中文字幕| 国产精品一品视频| 亚洲视频在线a| 黄色工厂这里只有精品| 午夜精品视频在线观看一区二区| 日韩中文字幕无砖| 国产精品99久久久久久久久久久久| 成年人黄视频在线观看| 精品无人国产偷自产在线| 国产欧美一级片| 色综合天天综合给合国产| 国产波霸爆乳一区二区| 久久精品日韩一区二区三区| 中文字幕在线国产| 麻豆免费精品视频| 蜜臀久久99精品久久久酒店新书| 欧美久久一级| 一区二区精品视频| 曰本一区二区三区视频| 国产欧美日韩伦理| 国产精品一区二区三区www| 国产精品99久久久久久久久| 999福利在线视频| 久久精品久久久久| 成人在线免费视频| 日韩激情片免费| 好吊色一区二区三区| 欧美一卡在线观看| 91 中文字幕| 欧洲激情一区二区| 天天操中文字幕| 亚洲成a人片在线不卡一二三区| 可以免费看av的网址| 亚洲国产精品ⅴa在线观看| 免费看污黄网站在线观看| 成人av在线电影| 在线观看一区二区三区视频| 九色综合国产一区二区三区| 亚洲欧美激情网| 久久精品网址| 美女av免费在线观看| 亚洲深夜影院| 黄页网站大全在线观看| 亚洲精品系列| 91专区在线观看| 亚洲精品乱码| 国产特级淫片高清视频| 亚洲人www| 久久艹国产精品| 激情综合网址| 女人天堂av手机在线| 国产婷婷精品| 成年人视频在线免费| 日韩中文字幕1| 免费黄色一级网站| 蜜臀av一区二区在线观看| 日韩av手机版| 久久精品国产99久久6 | 日韩另类在线| 欧美黑人巨大xxx极品| 97蜜桃久久| 欧美一级bbbbb性bbbb喷潮片| 国产调教在线| 欧美中文字幕第一页| 成人欧美magnet| 国产精品露脸自拍| 四虎国产精品免费久久5151| 91网站免费看| 大伊香蕉精品在线品播放| 国产一区二区三区av在线 | 在线精品日韩| 午夜精品影院| 国产一区二区在线视频播放| 久久精品成人| 欧美大片久久久| 大桥未久av一区二区三区中文| 国产麻豆xxxvideo实拍| 国产午夜一区二区三区| av最新在线观看| 亚洲成a人片在线观看中文| 中文字幕第15页| 欧美性受xxxx| 亚洲春色一区二区三区| 日韩毛片在线观看| 在线观看麻豆蜜桃| 欧美大片免费观看在线观看网站推荐| а√天堂8资源中文在线| 国产97免费视| 日韩区一区二| 欧美日韩成人一区二区三区| 希岛爱理一区二区三区| 尤物av无码色av无码| 美女视频黄免费的久久| 国产老头和老头xxxx×| 久久久影视传媒| 免费国产羞羞网站美图| 欧美色视频日本版| 国产精品久久久久久免费| 亚洲精品成人av| 免费人成在线观看播放视频| 91国产视频在线播放| 69堂免费精品视频在线播放| 国产66精品久久久久999小说| 国产一区二区亚洲| 97碰在线视频| 黄色片免费在线| 欧美精品一区二区三区中文字幕| 久久综合九色综合欧美亚洲| 亚洲一级黄色片| 成人免费在线视频播放| 性欧美videos高清hd4k| 欧美激情国产高清| 色天使综合视频| 高清不卡日本v二区在线| 欧美日韩国产一区二区三区不卡| 被灌满精子的波多野结衣| 美女视频免费一区| 白丝女仆被免费网站| 亚洲综合免费观看高清在线观看| 最新国产中文字幕| 日韩精品免费在线视频观看| www红色一片_亚洲成a人片在线观看_| 日本精品久久久久久久| 久9re热视频这里只有精品| 特级西西444| 免费一级片91| 亚洲第一综合网| 一本大道久久a久久综合婷婷| 肥臀熟女一区二区三区| 久久成人18免费网站| 国外成人福利视频| 日韩一区二区电影在线观看| 免费国产自线拍一欧美视频| 国产精品成人99一区无码 | 白浆在线视频| 成人xxxxx| 99久久久国产精品美女| 中文字幕第88页| 国产欧美日韩视频在线观看| 亚洲成人av影片| 亚洲久久久久久久久久| 日韩伦理精品| 久久精品中文字幕一区二区三区 | 伊人婷婷欧美激情| 国产又黄又粗又硬| 精品国产一区av| 天堂久久一区| 自拍偷拍99| 国产精品一二二区| 青娱乐91视频| 精品黑人一区二区三区久久| 国产精品一区hongkong| 国产成人精品日本亚洲11| 欧美日韩天堂| 国产精品麻豆入口| 狠狠躁夜夜躁人人躁婷婷91 | 国产在线视频欧美一区| 中文字幕黄色大片| 国产精品99久久久| 国产精品2020| 日韩电影中文字幕在线| 欧美色网一区| 亚洲一卡二卡区| 国产在线看一区| 久久久99精品| 亚洲国产欧美在线成人app| 天堂电影一区| 视频一区视频二区视频三区视频四区国产 | 91精品国产高清| 小嫩嫩12欧美| 亚洲一区二区蜜桃| 亚洲欧洲国产日韩| 精品人妻一区二区三区含羞草| 欧美激情a∨在线视频播放| 蜜桃一区av| 中文字幕第80页| 亚洲另类春色国产| 天天操天天舔天天干| 国产精品国语对白| 中文字幕免费精品| 青青草视频播放| 欧美日韩一卡二卡三卡| 国产一线二线在线观看 | 四虎成人免费视频| 色综合久久88色综合天天免费| 青青青青在线| 精品国产乱码久久久久软件| 麻豆精品一区二区av白丝在线| 日韩黄色免费观看| 亚洲人成网站免费播放| av日韩一区| 精品无码一区二区三区在线| 欧美国产日韩一二三区| 亚洲av无码一区二区三区性色| 人妖精品videosex性欧美| 午夜激情久久| aa片在线观看视频在线播放| 51久久夜色精品国产麻豆| 在线观看网站免费入口在线观看国内 | 丁香六月色婷婷| 国产精品丝袜久久久久久高清|