『Python』Python爬虫笔记:爬取单个页面( 三 )


soup = BeautifulSoup(html,'html.parser') 在处理后的数据中提取出所有class=col-md-1的div的内容
nums = soup.find_all('div',class_='col-md-1') 此是我们的数据变为:
『Python』Python爬虫笔记:爬取单个页面
本文插图
注意这里我圈出的细节 , 这说明经过处理后的数据存储到了一个列表中 。
接下来就是需要把除了数字之外的字符全部剔除
x = re.findall(r'\d\d\d',str(nums),re.DOTALL) 因为正则表达式是针对字符串的 , 所以我们需要用str方法将刚获取到的数据转化为字符串类型 , findall方法的第一个参数即是匹配三位数字的正则表达式 , re.DOTALL表示匹配所有字符 , 包括换行符等特殊符号 。
re模块中的Findall方法 , 和BeautifulSoup模块的find_all方法完全不一样 。
『Python』Python爬虫笔记:爬取单个页面
本文插图
Python re模块的官方文档中详细罗列了各个方法的使用方法和一些简单的正则表达式知识 。
至此 , 我们就已经将所有的数值匹配出来了
『Python』Python爬虫笔记:爬取单个页面
本文插图
接下来就可以使用for循环通过下标对这个列表进行遍历 , 然后将数据累加求和 , 这部分的代码不再给出 。
多尝试 , 三行代码就能解决 。
另外 , 其实BeautifulSoup和re任意一个模块都可以完成数据筛选工作 , 我没用的原因是因为我懒 。
最后给出最终运行结果
『Python』Python爬虫笔记:爬取单个页面
本文插图
『Python』Python爬虫笔记:爬取单个页面
本文插图
【『Python』Python爬虫笔记:爬取单个页面】


推荐阅读