一. Python爬蟲基礎(chǔ)

1.字符串基礎(chǔ)

①字符串的加法和乘法

a = 'I'
b = ' love'
c = ' Scrapy'
d = '!'
print(a + b + c + d*3)

結(jié)果: I love Scrapy!!!

②字符串的切片和索引

a = 'I love Scrapy!!!'
print(a[0],a[0:6],a[-1])

結(jié)果: I I love !

③字符串方法

  • split()方法:分割空字符或指定的字符,返回列表形式

  • strip()方法:去除首尾空字符或指定的字符

  • replace()方法:替換指定字符串

  • format()方法:字符串格式化符

a = " www..baidu..com "
link = a.strip().replace("..",".").split(".")
print(link)

分析: www..baidu..comwww.baidu.com['www', 'baidu', 'com']
結(jié)果: ['www', 'baidu', 'com']

2.函數(shù)與控制語(yǔ)句

①函數(shù)

def func(參數(shù)1,參數(shù)2...):
    return 結(jié)果    

②判斷語(yǔ)句

if...else...
if...elif...else...    #多重條件

③循環(huán)語(yǔ)句

for item in iterable:   #方式一
    pass

for i in range(1:10):  #方式二
    print(i)

while 條件:           #方式三
    執(zhí)行語(yǔ)句

3.Python數(shù)據(jù)結(jié)構(gòu)

①列表:爬蟲實(shí)戰(zhàn)中使用最多的數(shù)據(jù)結(jié)構(gòu)。例如構(gòu)造多個(gè)URL,保存爬取到的數(shù)據(jù)等。

  • 常用方式一:列表+多重循環(huán)
names = ["張三","李四","王五"]
ages = [6,7,8]
for name,age in zip(names,ages):
    print(name,age,end='| ')

結(jié)果: 張三 6|李四 7|王五 8|

  • 常用方式二:構(gòu)造URL
urls = ['http://www.top123.com/{}-8'.format(i) for i in range(1,5)]
for url in urls:
    print(url)

結(jié)果:

http://www.top123.com/1-8
http://www.top123.com/2-8
http://www.top123.com/3-8
http://www.top123.com/4-8

②字典:搭配數(shù)據(jù)庫(kù)使用,此處僅列出字典的創(chuàng)建。

users_info = {'張三': 6, '李四': 7, '王五': 8}

③元組和集合:元組和集合較少使用。

其中,集合的元素?zé)o序,且無(wú)重復(fù)對(duì)象,可用于去除重復(fù)對(duì)象

list1 = ['I','You','I']
set1 = set(list1)
print(set1)

結(jié)果: {'I', 'You'}

4.Python文件操作

f = open("F:/d.txt",'w+')
f.write("Hello!")
content = f.read()
print(content)
f.close()

此時(shí)打印無(wú)結(jié)果,因?yàn)閷懭氲臄?shù)據(jù)還保存在緩存中,直至執(zhí)行完f.close()。
更推薦下面的寫法:

with open("F:/d.txt",'r+') as f:
    content = f.read()
    print(content)
    f.close()
  • open()函數(shù)中模式參數(shù)的常用值
描述
'r' 讀模式
'w' 寫模式
'a' 追加模式
'b' 二進(jìn)制模式,用于圖片、視頻等,例如'wb'可用于下載視頻。
'+' 讀/寫模式,可與其他模式疊加,例如'a+','wb+'等。

5.Python面向?qū)ο?/h2>

①定義類:類名首字母一般大寫。 class Bike:

②實(shí)例屬性 Bike.other

③實(shí)例方法 Bike.use()

④類的繼承 class Share_bike(Bike):

⑤類的魔術(shù)方法,例如: def __init__(self):

完整例子:

class Bike:
    compose = ['frame','wheel','pedal']

    def __init__(self):
        self.other = 'basket'

    def use(self,times):    ##times為次數(shù),假設(shè)使用一次騎行5km
        print('You ride {}km'.format(times*5))

class Share_bike(Bike):

    def cost(self,hour):    ##假設(shè)一小時(shí)收取2元
        print('You spent {}'.format(hour*2))
        
mybike = Share_bike()
print(mybike.other)
mybike.use(2)
mybike.cost(3)

結(jié)果:

basket
You ride 10km
You spent 6
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 爬蟲是什么爬蟲是一段用來(lái)抓取互聯(lián)網(wǎng)數(shù)據(jù)的一段程序,給定一個(gè)位置(url)為起點(diǎn),爬蟲從這個(gè)url開始,爬去互聯(lián)網(wǎng)上...
    zhile_doing閱讀 752評(píng)論 0 0
  • 父類實(shí)現(xiàn)深拷貝時(shí),子類如何實(shí)現(xiàn)深度拷貝。父類沒(méi)有實(shí)現(xiàn)深拷貝時(shí),子類如何實(shí)現(xiàn)深度拷貝。? 深拷貝同淺拷貝的區(qū)別:淺拷...
    JonesCxy閱讀 1,190評(píng)論 1 7
  • ? 深拷貝同淺拷貝的區(qū)別:淺拷貝是指針拷貝,對(duì)一個(gè)對(duì)象進(jìn)行淺拷貝,相當(dāng)于對(duì)指向?qū)ο蟮闹羔樳M(jìn)行復(fù)制,產(chǎn)生一個(gè)新的指向...
    WSGNSLog閱讀 1,384評(píng)論 0 1
  • 第5章 引用類型(返回首頁(yè)) 本章內(nèi)容 使用對(duì)象 創(chuàng)建并操作數(shù)組 理解基本的JavaScript類型 使用基本類型...
    大學(xué)一百閱讀 3,667評(píng)論 0 4
  • 早晨霧茫茫的一片,送完兩孩子上學(xué),折返回家收拾家務(wù)。收拾完。一邊背著包準(zhǔn)備離開家門,一邊電話中聯(lián)系我們正面管教的書...
    嵐舒家庭教育閱讀 247評(píng)論 0 0

友情鏈接更多精彩內(nèi)容