python爬蟲常用函數 爬蟲函數用法介紹

python爬蟲---爬取LOL云頂之弈數據

本來是想爬取之后作最佳羈絆組合推算,但是遇到知識點無法消化(知識圖譜),所以暫時先不組合了,實力有限

成都創新互聯服務項目包括樂安網站建設、樂安網站制作、樂安網頁制作以及樂安網絡營銷策劃等。多年來,我們專注于互聯網行業,利用自身積累的技術優勢、行業經驗、深度合作伙伴關系等,向廣大中小型企業、政府機構等提供互聯網行業的解決方案,樂安網站推廣取得了明顯的社會效益與經濟效益。目前,我們服務的客戶以成都為中心已經輻射到樂安省份的部分城市,未來相信會繼續擴大服務區域并繼續獲得客戶的支持與信任!

庫的安裝

1.requests? #爬取棋子數據

2.json? #棋子數據為js動態,需使用json解析

3.BeautifulSoup

實戰前先新建個lol文件夾作為工作目錄,并創建子目錄data,用于存放數據。

1.爬取數據,新建個py文件,用于爬取云頂數據,命名為data.py

1.1定義個req函數,方便讀取。//需設定編碼格式,否則會出現亂碼

def Re_data(url):

re = requests.get(url)

re.encoding = 'gbk'

data = json.loads(re.text)

return data['data']

1.2定義個Get函數,用于讀取數據并使用保存函數進行保存數據,保存格式為json。

def Get_data():

# 獲取數據并保存至data目錄

base_url = ''

chess = Re_data(base_url + 'chess.js')

race = Re_data(base_url + 'race.js')

job = Re_data(base_url + 'job.js')

equip = Re_data(base_url + 'equip.js')

Save_data(chess,race,job,equip)

1.3定義save函數實現讀取的數據進行文件保存,保存目錄為工作目錄下的data文件夾。

def Save_data(t_chess,t_race,t_job,t_equip):

with open('./data/chess.json','w') as f:

json.dump(t_chess,f,indent='\t')

with open('./data/race.json','w') as f:

json.dump(t_race,f,indent='\t')

with open('./data/job.json','w') as f:

json.dump(t_job,f,indent='\t')

with open('./data/equip.json','w') as f:

json.dump(t_equip,f,indent='\t')

1.4定義主函數main跑起來

if __name__ == '__main__':

start = time.time()

Get_data()

print('運行時間:' + str(time.time() - start) + '秒')

至此,數據爬取完成。

2.種族和職業進行組合。

2.1未完成 //未完成,使用窮舉方法進行組合會出現內存不夠導致組合失敗(for循環嵌套導致數組內存超限)

//待學習,使用知識圖譜建立組合優選,可參考:

期間遇到的問題:

1.爬取棋子數據時為動態js加載,需通過json模塊的loads方法獲取

2.3層for循環嵌套數據量大,導致計算失敗,需優化計算方法。

太全了!Python3常用內置函數總結

數學相關

abs(a) : 求取絕對值。abs(-1)

max(list) : 求取list最大值。max([1,2,3])

min(list) : 求取list最小值。min([1,2,3])

sum(list) : 求取list元素的和。 sum([1,2,3]) 6

sorted(list) : 排序,返回排序后的list。

len(list) : list長度,len([1,2,3])

divmod(a,b): 獲取商和余數。 divmod(5,2) (2,1)

pow(a,b) : 獲取乘方數。pow(2,3) 8

round(a,b) : 獲取指定位數的小數。a代表浮點數,b代表要保留的位數。round(3.1415926,2) 3.14

range(a[,b]) : 生成一個a到b的數組,左閉右開。range(1,10) [1,2,3,4,5,6,7,8,9]

類型轉換

int(str) : 轉換為int型。int('1') 1

float(int/str) : 將int型或字符型轉換為浮點型。float('1') 1.0

str(int) : 轉換為字符型。str(1) '1'

bool(int) : 轉換為布爾類型。 str(0) False str(None) False

bytes(str,code) : 接收一個字符串,與所要編碼的格式,返回一個字節流類型。bytes('abc', 'utf-8') b'abc' bytes(u'爬蟲', 'utf-8') b'xe7x88xacxe8x99xab'

list(iterable) : 轉換為list。 list((1,2,3)) [1,2,3]

iter(iterable): 返回一個可迭代的對象。 iter([1,2,3]) list_iterator object at 0x0000000003813B00

dict(iterable) : 轉換為dict。 dict([('a', 1), ('b', 2), ('c', 3)]) {'a':1, 'b':2, 'c':3}

enumerate(iterable) : 返回一個枚舉對象。

tuple(iterable) : 轉換為tuple。 tuple([1,2,3]) (1,2,3)

set(iterable) : 轉換為set。 set([1,4,2,4,3,5]) {1,2,3,4,5} set({1:'a',2:'b',3:'c'}) {1,2,3}

hex(int) : 轉換為16進制。hex(1024) '0x400'

oct(int) : 轉換為8進制。 oct(1024) '0o2000'

bin(int) : 轉換為2進制。 bin(1024) '0b10000000000'

chr(int) : 轉換數字為相應ASCI碼字符。 chr(65) 'A'

ord(str) : 轉換ASCI字符為相應的數字。 ord('A') 65

相關操作

eval****() : 執行一個表達式,或字符串作為運算。 eval('1+1') 2

exec() : 執行python語句。 exec('print("Python")') Python

filter(func, iterable) : 通過判斷函數fun,篩選符合條件的元素。 filter(lambda x: x3, [1,2,3,4,5,6]) filter object at 0x0000000003813828

map(func, *iterable) : 將func用于每個iterable對象。 map(lambda a,b: a+b, [1,2,3,4], [5,6,7]) [6,8,10]

zip(*iterable) : 將iterable分組合并。返回一個zip對象。 list(zip([1,2,3],[4,5,6])) [(1, 4), (2, 5), (3, 6)]

type():返回一個對象的類型。

id(): 返回一個對象的唯一標識值。

hash(object):返回一個對象的hash值,具有相同值的object具有相同的hash值。 hash('python') 7070808359261009780

help():調用系統內置的幫助系統。

isinstance():判斷一個對象是否為該類的一個實例。

issubclass():判斷一個類是否為另一個類的子類。

globals() : 返回當前全局變量的字典。

next(iterator[, default]) : 接收一個迭代器,返回迭代器中的數值,如果設置了default,則當迭代器中的元素遍歷后,輸出default內容。

reversed(sequence) : 生成一個反轉序列的迭代器。 reversed('abc') ['c','b','a']

Python爬蟲-常用的請求方式

爬蟲的請求方式常用的有urllib和requests,前者是自帶模塊,后者需要我們自己進行安裝。

安裝requests模塊

注意:在 python2 中,urllib 被分為urllib,urllib2等,在python3中我們直接使用urllib

雖然Python的標準庫中 urllib 模塊已經包含了平常我們使用的大多數功能,但是它的 API 使用起來讓人感覺不太好,而 Requests 自稱 "HTTP for Humans",說明使用更簡潔方便。

Python 爬蟲的入門教程有哪些值得推薦的?

Python 爬蟲的入門教程有很多,以下是我推薦的幾本:

1.《Python 網絡爬蟲開發實戰》:這本書介紹了Python爬蟲的基本原理,以及如何使用Python編寫爬蟲程序,實現網絡爬蟲的功能。

2.《Python爬蟲技術實戰》:這本書介紹了Python爬蟲的基本原理,以及如何使用Python編寫爬蟲程序,實現網絡爬蟲的功能。

3.《Python爬蟲數據分析》:這本書介紹了如何分析爬取到的數據,以及如何使用Python編寫爬蟲程序,實現網絡爬蟲的功能。

4.《Python爬蟲實戰:深入理解Web抓取》:這本書介紹了如何使用Python編寫爬蟲程序,實現網絡爬蟲的功能,以及如何深入理解Web抓取。

5.《Python網絡爬蟲實戰》:這本書介紹了如何使用Python編寫爬蟲程序,實現網絡爬蟲的功能,以及如何解決爬蟲程序遇到的問題。

以上就是我推薦的幾本Python爬蟲的入門教程,可以幫助初學者快速掌握Python爬蟲的基本技術。

分享名稱:python爬蟲常用函數 爬蟲函數用法介紹
網頁地址:http://m.kartarina.com/article16/dodshgg.html

成都網站建設公司_創新互聯,為您提供網站設計公司App設計品牌網站建設手機網站建設自適應網站外貿建站

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

h5響應式網站建設
主站蜘蛛池模板: 久久精品无码av| 亚洲?V无码乱码国产精品| 亚洲精品色午夜无码专区日韩| 成人无码网WWW在线观看| 国产产无码乱码精品久久鸭| 无码国产精品一区二区免费式影视 | 亚洲AV无码XXX麻豆艾秋| 中文字幕无码av激情不卡久久 | 97碰碰碰人妻视频无码| 国产亚洲?V无码?V男人的天堂 | 亚洲一级Av无码毛片久久精品| 亚洲成AV人片在线播放无码| 久久亚洲AV成人无码电影| 国产高清无码二区 | 久久午夜福利无码1000合集| 久久精品aⅴ无码中文字字幕重口| 久久中文字幕无码一区二区| 亚洲国产综合无码一区 | 无码人妻AV一二区二区三区| 免费无遮挡无码永久在线观看视频| 久久久久亚洲AV无码专区体验| 亚洲日韩VA无码中文字幕| 无码人妻丝袜在线视频| 精品久久久久久无码专区| 秋霞无码一区二区| 无码日韩人妻精品久久蜜桃| 国产精品无码A∨精品影院| 国产AV无码专区亚洲AWWW| 亚洲男人第一无码aⅴ网站| 日韩专区无码人妻| 亚洲AV中文无码乱人伦在线视色| 国产品无码一区二区三区在线| av无码久久久久不卡免费网站| 无码成人精品区在线观看| 色窝窝无码一区二区三区色欲| 午夜无码A级毛片免费视频 | 乱人伦中文无码视频在线观看| 日韩av无码中文字幕| 2024你懂的网站无码内射| 亚洲av无码专区亚洲av不卡| 天堂一区人妻无码|