一起来学Python爬虫基础篇——变量和字符串的基本用法

百度已收录   阅读次数: 127
2021-01-0103:26:00 发表评论
摘要

伯衡君想使用Python这门编程语言进行爬虫,那么就需要掌握Python这门编程语言,肯定是需要掌握基础用法,才能在基础之上进行提高,本篇文章就从Python的变量和字符串的运用开始好了……

一起来学Python爬虫基础篇——变量和字符串的基本用法

开篇寄语

伯衡君想使用Python这门编程语言进行爬虫,那么就需要掌握Python这门编程语言,肯定是需要掌握基础用法,才能在基础之上进行提高,本篇文章就从Python的变量和字符串的运用开始好了。

内容详情

以下内容都是Python3版本运行。

变量

Python中的变量很好理解,例如:

alp = 100

这种操作称为赋值,意思为将数值100赋给了变量alp。

注意:Python中语句结束不需要以分号结束,变量不需要提前定义。

现在有变量a和变量b,可以通过下面代码进行变量a、b值的对换。

a = 4
b = 5
t = a #把a值赋给t变量
a = b #把b值赋给a变量
b = t #把t值赋给b变量
print(a,b)

字符串的“加法”和“乘法”

由于Python爬虫的对象大部分为文本,所以字符串的用法尤为重要。在Python中,字符串由双引号或单引号和引号中的字符组成。首先,通过下面代码看看字符串的“加法”:

a = 'I'
b = ' love'
c = ' Python'
print(a + b + c) #字符串相加

Python的字符串不仅可以相加,也可以乘以一个数字:

a = 'word'
print(a*3) #字符串乘法

字符串的切片和索引

字符串的切片和索引就是通过string[x],获取字符串的一部分信息:

a = 'I love python'
print(a[0]) #取字符串第一个元素
print(a[0:5]) #取字符串第一个到第五个元素
print(a[-1]) #取字符串最后一个元素

注意:a[0:5]中的第5个是不会选择的。

在爬虫实战中,经常会通过字符串的切片和索引,提取需要的部分,剔除一些不需要的部分。

字符串方法

Python作为面向对象的语言,每个对象都有相应的方法,字符串也一样,拥有多种方法,在这里介绍爬虫技术中常用的几种方法。

split()方法

a = 'www.baidu.com'
print(a.split('.'))

字符串的split()方法就是通过给定的分隔符(在这里为‘.’),将一个字符串分割为一个列表(后面将详细讲解列表)。

注意:如果没有提供任何分隔符,程序会把所有的空格作为分隔符(空格、制表、换行等)。

repalce()方法

a = 'There is apples'
b = a.replace('is','are')
print(b)
#输出结果为'There are apples'

这种方法类似文本中的“查找和替换”功能。

strip()方法

a = ' python is cool '
print(a.strip())

strip()方法返回去除两侧(不包括内部)空格的字符串,也可以指定需要去除的字符,将它们列为参数中即可。

a = 'python is good'
print(a.strip('*!'))

这个方法只能去除两侧的字符,在爬虫得到的文本中,文本两侧常会有多余的空格,只需使用字符串的strip()方法即可去除多余的空格部分。

format()方法

最后,再讲解下好用的字符串格式化符,首先看以下代码:

a = '{} is my love'.format('Python')
print(a)

字符串格式化符就像是做选择题,留了空给做题者选择。在爬虫过程中,有些网页链接的部分参数是可变的,这时使用字符串格式化符可以减少代码的使用量。

例如,本站(https://www.luckydesigner.space/),当搜索文章时,网页链接也会发生变化,如在搜索栏中输入book,网页跳转为https://www.luckydesigner.space/?s=rss,可以设计如下代码,只需输入搜索内容,便可返回网页链接。

content = input('请输入搜索内容:')
url_path = 'https://www.luckydesigner.space/?s=
{}'.format(content)
print(url_path)

运行程序并输入rss,便可返回网页链接,单击网页链接便可访问网页了。

进阶玩法

当掌握到一定程度后,就可以参看以下文章来进行爬虫啦:

分享至:
  • 我的微信
  • 微信扫一扫加好友
  • weinxin
  • 我的微信公众号
  • 扫描关注公众号
  • weinxin

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: