搜索

查看: 3114|回复: 11

[Python] Python用selenium实现自动登录和下单的项目实战

[复制链接]
发表于 2023-5-4 17:20:11 | 显示全部楼层 |阅读模式
Editor 2023-5-4 17:20:11 3114 11 看全部
目录
  • 前言
  • 前期准备
  • 代码实现思路
  • 配置浏览器驱动
  • 确定浏览器版本
  • 下载驱动
  • 测试是否成功
  • 代码实现
  • 最后
    前言
    学python对selenium应该不陌生吧
    Selenium 是最广泛使用的开源 Web UI(用户界面)自动化测试套件之一。Selenium 支持的语言包括C#,Java,Perl,PHP,Python 和 Ruby。目前,Selenium Web 驱动程序最受 Python 和 C#欢迎。
    Selenium 测试脚本可以使用任何支持的编程语言进行编码,并且可以直接在大多数现代 Web 浏览器中运行。在爬虫领域 selenium 同样是一把利器,能够解决大部分的网页的反爬问题,但也不是万能的,它最明显的缺点就是速度慢。

    今天就来看看 咱们应该如何实现简单的自动登录和下单的脚本

    前期准备
  • python 3.8
  • pycharm专业版
  • selenium==3.141.0
    代码实现思路
  • 打开浏览器
  • 输入网址
  • 登陆
  • 选择商品属性, 点击立即购买
  • 下单
    配置浏览器驱动
    这里以安装 Chrome 驱动作为演示。但 Chrome 在用 selenium 进行自动化测试时还是有部分bug,常规使用没什么问题,但如果出现一些很少见的报错,可以使用 Firefox 进行尝试,毕竟是selenium 官方推荐使用的。

    确定浏览器版本

    2023022215363845.png

    2023022215363845.png


    下载驱动
    下载版本相对接近的就行,不用完全一致

    2023022215363846.png

    2023022215363846.png


    2023022215363847.png

    2023022215363847.png


    将 chromedriver.exe 保存到任意位置,并把当前路径保存到环境变量中(我的电脑>>右键属性>>高级系统设置>>高级>>环境变量>>系统变量>>Path),添加的时候要注意不要把 path 变量给覆盖了,如果覆盖了千万别关机,然后百度

    测试是否成功
    from selenium import webdriver
    # Chrome浏览器
    driver = webdriver.Chrome()

    代码实现
    模块导入
    from selenium import webdriver
    import time
    1. 打开浏览器
    driver = webdriver.Chrome()
    2. 输入网址
    url = 'https://*****.com/item.htm?abbucket=9&id=667918031025&rn=30933d864f689e92fec433592f0dc822'
    driver.get(url)
    driver.implicitly_wait(10)
    3. 登陆(不是经常登录的电脑,需扫码登录)
    try:
        iframe = driver.find_element_by_css_selector('iframe')
    except:
        iframe = driver.find_element_by_css_selector('#baxia-dialog-content')
    # 切换到嵌套页面
    driver.switch_to.frame(iframe)
    源码领取:690643772
    # 标签别名
    # 匹配到二维码并且点击
    driver.find_element_by_css_selector('.iconfont.icon-qrcode').click()
    # 留几秒钟 需要登陆
    while True:
        print("###请扫码登陆###")
        if driver.title != "商品详情":
            break
        time.sleep(1)
    print("###登陆成功!!!###")
    4. 选择商品属性, 点击立即购买
    try:
        # 选择商品属性
        driver.find_element_by_css_selector('.skuValueName').click()
        # 点击立即购买
        driver.find_element_by_css_selector('div>button>span').click()
        源码领取:690643772
    except:
        # 选择商品属性
        driver.find_element_by_css_selector('.tm-clear.J_TSaleProp li').click()
        # 点击立即购买
        driver.find_element_by_css_selector('#J_LinkBuy').click()
    time.sleep(1)
    driver.find_element_by_css_selector('.go-btn').click()
    input()
    5. 下单
    最简单的一个步骤:拿出手机,打开支fu宝,扫码付钱就行

    最后
    到此这篇关于Python用selenium实现自动登录和下单的项目实战的文章就介绍到这了,更多相关Python selenium自动登录和下单内容请搜索知鸟论坛以前的文章或继续浏览下面的相关文章希望大家以后多多支持知鸟论坛
  • 回复

    使用道具 举报

    发表于 2023-6-28 19:36:05 | 显示全部楼层
    李志敏 2023-6-28 19:36:05 看全部
    我看不错噢 谢谢楼主!知鸟论坛越来越好!
    回复

    使用道具 举报

    发表于 2023-6-29 17:26:50 | 显示全部楼层
    术数古籍专卖疤 2023-6-29 17:26:50 看全部
    楼主太厉害了!楼主,I*老*虎*U!我觉得知鸟论坛真是个好地方!
    回复

    使用道具 举报

    发表于 2023-6-29 18:50:40 | 显示全部楼层
    冀苍鸾 2023-6-29 18:50:40 看全部
    这东西我收了!谢谢楼主!知鸟论坛真好!
    回复

    使用道具 举报

    发表于 2023-6-29 18:58:20 | 显示全部楼层
    素色流年783 2023-6-29 18:58:20 看全部
    楼主太厉害了!楼主,I*老*虎*U!我觉得知鸟论坛真是个好地方!
    回复

    使用道具 举报

    发表于 2023-6-30 00:10:18 | 显示全部楼层
    丁侦球 2023-6-30 00:10:18 看全部
    论坛不能没有像楼主这样的人才啊!我会一直支持知鸟论坛
    回复

    使用道具 举报

    发表于 2023-6-30 09:51:21 | 显示全部楼层
    掌舵的鱼1987 2023-6-30 09:51:21 看全部
    既然你诚信诚意的推荐了,那我就勉为其难的看看吧!知鸟论坛不走平凡路。
    回复

    使用道具 举报

    发表于 2023-6-30 12:09:41 | 显示全部楼层
    我的苦恼冉 2023-6-30 12:09:41 看全部
    楼主,大恩不言谢了!知鸟论坛是最棒的!
    回复

    使用道具 举报

    发表于 2023-7-1 20:11:32 | 显示全部楼层
    123456825 2023-7-1 20:11:32 看全部
    我看不错噢 谢谢楼主!知鸟论坛越来越好!
    回复

    使用道具 举报

    发表于 2023-7-3 10:13:39 | 显示全部楼层
    xinting_6ym 2023-7-3 10:13:39 看全部
    楼主太厉害了!楼主,I*老*虎*U!我觉得知鸟论坛真是个好地方!
    回复

    使用道具 举报

    • 您可能感兴趣
    点击右侧快捷回复 【请勿灌水】
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则 返回列表

    RSS订阅| SiteMap| 小黑屋| 知鸟论坛
    联系邮箱E-mail:zniao@foxmail.com
    快速回复 返回顶部 返回列表