我的python学习笔记(requests_html、beautifulsoup、playwright)爬取电商平台热卖榜,解决动态加载,反爬等问题,适合初学者,浅显易懂

本文介绍了Python爬虫的基础知识,包括环境搭建、模块导入、for循环、try-except和第三方库的使用。重点讲解了使用requests_html和beautifulsoup爬取电商平台热卖榜,解决动态加载和反爬问题。同时,介绍了自动化测试框架playwright,如何通过它获取动态加载的数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

前言

一、python基础知识

1.环境搭建

2.模块导入

 3.for循环

 4.try except的使用

 5.第三方库的使用

二、爬虫requests_html和beautiful soup使用

1.引入库

2.定义一个获取网页源码的get_code函数

3.定义一个解析网页源码的extract_infos函数

4.创建程序入口

5.完整代码

三、自动化测试框架playwright

1.结果展现

2.导入库

3.定义get_code(page_num)函数获取网页源码

4.对获取的源码进行解析

5.完整源码

总结


前言

本文是作者自学python的总结性文章,如有不严谨的地方,请各位不吝赐教,共同进步!


一、python基础知识

1.环境搭建

         选择anaconda+pycharm,原因是anaconda自带python,所以无需单独再安装python,并且anaconda里面已经自带了常用的第三方库,省去了额外下载第三方库的大量时间,python由于经常需要安装第三方库(可以用python写代码用到第三方库就跟平时喝水一样常见),所以采用anaconda+pycharm最适合。

        关于安装anaconda和pycharm网上很多教程,都挺简单的,这里就不讲了。

2.模块导入

        用python写代码,一般第一件事就是导入相关模块了,比如你想写个爬虫代码,需要导入模块,你想开发一个小程序,要先导入模块,你想写个代码对excel表格里的数据进行处理,也得先导入模块,总之,无论你用python做什么,都要先导入模块(所以用anaconda真的很方便,无需经常安装模块)

        导入的方法也很简单,一般常用2种,第一种就是import 这里是你要导入的模块名,第二种是from这里是你要导入的模块名 import 你要使用的类

        代码如下(示例):

#直接导入
import requests_html
#从bs4里只导入BeautifulSoup进行使用
from bs4 import BeautifulSoup

 3.for循环

        学会导入模块之后,接下来学习一些在python里常用的语法。

        for循环的使用也较为简单,主要用于我们要重复完成同一件事情的时候,就可以采用for循环,演示代码如下,我做了详细的备注:

z=0#首先定义z为0
a=list(range(0,20))#然后用range生成从0到19总共20个数字,并用list函数将其转为列表
for i in a:#用for循环遍历0到19,i即对应0到19那20个数字,每循环一次,就换下一个数字进行循环,直到最后一个数字19
    z+=i#每遍历一次z都加上i
print(z)#最后打印z,结果为190

 4.try except的使用

        这个一般是用来规避错误,让代码接着往下跑的,如果没有这个,当代码遇到bug时,就会报错,而有这个,当代码遇到bug时,则会去执行except后的代码。

 5.第三方库的使用

        用python完成不同任务时,需要使用不同的库

        爬虫应用:requests_html(和requests一样,但功能更丰富)、beautifulful soup

        数据分析:pandas、matplotlib

        开发应用程序:pyqt5

        自动化测试:playwright(和selenium同类型)

二、爬虫requests_html和beautiful soup使用

        这里以爬取国际电商平台为例子,这是那个国际电商平台

1.引入库

        第一步,导入要使用的requests_html和beautiful soup库,代码如下(示例):

"""第一步,导入爬虫应用库"""
from requests_html import HTMLSession,UserAgent
from bs4 import BeautifulSoup

2.定义一个获取网页源码的get_code函数

        第二步,我们定义一个获取网页源码的函数,主要用到上面导入进来的requests_html函数,在这一步,先创建一个session,后基于这个session发布网络请求get请求。

        接着是伪装浏览器,需要创建一个随机ua,即随机请求头,然后把伪装信息全部封装在headers字典里,作为后面发送get请求的一个参数。

        接下来是把发送请求得到的响应信息源码保存下来,并返回函数入口,供下面解析步骤使用

        代码如下(示例):

"""第二步,拿到网页源码,可以理解一次性拿到所有货物"""
def get_code(page):#定义一个函数,这个函数以页面为参数
    session
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

心自心

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值