码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • bugku 秋名山车神


    get新知识:一些有关python爬虫的基本知识

    解题部分

     

    题目中都是这样的大数字进行计算,并且需要短时间内计算,所以这不得不使用脚本进行解题,脚本如下

    1. #bugku 秋名山车神 --爬虫练习
    2. import requests
    3. import re
    4. ​
    5. s=requests.Session()
    6. url='http://114.67.175.224:18569/'                              #网页的url
    7. r=s.get(url)                                                    #以get的方式访问网站
    8. r.encoding = 'utf-8'                                            #设置编码格式
    9. a=r.text                                                        #将页面定义给a
    10. #print(a)
    11. ​
    12. n = re.findall(r'\d.*?=',a)[0]                                  #通过re正则匹配出a中的数字
    13. #print(n)
    14. ​
    15. ​
    16. c=re.sub("[=]",'',str(n))                                       #去掉那个多余的'='
    17. #print(c)
    18. c=eval(c)                                                         #执行代码==》计算
    19. ​
    20. o = s.post(url,data={'value':c})  #提交结果
    21. print (o.text)

    运行结果:

    脚本分析

    个人理解脚本分为三部分:1、获取数据 2、正则读取数据并处理 3、传输数据

    1、获取数据

    这部分利用了requests类的内置的方法,其中值得一提的是s=requests.Session()这部分,必须有目的是保持会话

     

    2、正则读取数据并处理

    这里用了两个re库中的两个内置函数

    1、在import re中,(re.findall(pattern, string, flags=0)):返回string中所有与pattern相匹配的全部字符串,得到数组

    2、re.sub是个正则表达式方面的函数,用来实现通过正则表达式,实现比普通字符串的replace更加强大的替换功能;

     

    3、传输数据

    题目中提示用post传输所以

     

    特别感谢:

    (27条消息) Bugku 秋名山车神_没有名字了。。的博客-CSDN博客

    (27条消息) python re模块(正则表达式) sub()函数详解leo的学习之旅的博客-CSDN博客python sub函数

    (27条消息) Python---re.findall的用法扫地di的博客-CSDN博客python re.findall()用法

  • 相关阅读:
    毫秒级精度计划任务管理、系统运维管理、定时执行任务、定时任务执行、任务定时执行软件 —— 定时执行专家
    Mybatis笔记一
    .NET Core MongoDB数据仓储和工作单元模式实操
    k8s暴露集群内和集群外服务的方法
    Java框架-SpringMVC(基础使用+运行流程+拦截器+统一异常处理等详解)
    git 提交
    JVM核心参数图解-整理
    给文字做涂鸦效果的五种实现方案
    mysql面试题17:MySQL引擎InnoDB与MyISAM的区别
    【深基13.例1】查找
  • 原文地址:https://blog.csdn.net/m0_62709637/article/details/126187367
  • 最新文章
  • 沪漂五周年了:我越来越迷茫了
    Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
    MySQL-Seconds_behind_master的精度误差
    [MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
    AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
    Agent OS :五种驯服不确定性的范式
    PortSwigger SQL注入LAB11
    数据库即时编译JIT
    [Begin]AI Learn Data Day 0
    深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号