python的学习
网络安全的学习不是一蹴而就的,它是一个循序渐进的过程。python这个语言与C/C++有着面向的目标的不同,c/C++是面向过程而python是面向对象。因此,python的学习可以帮助我们不仅仅可以帮助我们提升编程的能力,还能帮助我们提升自身的工作效率。
(将来想要从事网络安全工作的同仁,希望大家能够知道学习编程语言不是要你能够成为一名优秀的程序开发人员而是要你能够看得代码在分析问题得时候能够有着好的思路就是很好的。像现在有着很多的AI工具,大家都可以合理的运用并且不断地学习新的知识。)
(一)python的基本语法
(1)
print:输出;
-- # --:井号键在python在中就是注释的作用
print(1) #打印1;
number = 100 # 赋值整型变量
miles = 1000.0 # 浮点型
name = "John" # 字符串
(2) 自定义函数与调用函数
def sum(a,b) #def自定义+名
return a+b
==========================
print(sum(1,3)) #调用函数sum
==========================
<! a和b是形参,1和3是实参;学过的应该都知道 >
(3)request的模块的了解
request模块,可以在编译环境中安装,也可以在电脑环境中安装
(cmd:pip install request)
request模块:第三方模块,就像是自己用 def xxx (参数1,参数2....)写出来的代码模块
大家学习了客户端向服务器发送请求的话应该都了解了,自己写的脚本就是自动化的体现,其编写的步骤与原理大致都是相同的,但是要爬取具体的内容就是需要大家去web上复制XPath。
request的脚本进行爬取数据
#发送请求,获取网页数据(request是第三方模块)
import requests
url="https://www.movie.douban.com/top250" #以豆瓣网站为例
#请求头:UA、cookie、
headers="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36"
resp=requests.get(url,headers=headers)
resp.encoding="utf-8"
#解析HTML响应
tree=etree.HTML(resp.text)
titles=tree.xpath('//div[@class="title"]/text()')
titles=list(map(str.strip,titles))
print(len(titles))
print(titles)
#放在桌面的文件中
with open("top250.txt","w",encoding="utf-8") as f:
for title in titles:
f.write(title+"\n")
工具:dirsearch:扫描工具,可以在kali里面安装
其实这种模块比如说urllib.Request、get模块,想加深自己对自动化脚本的理解,自己可以借助AI工具编写脚本借助request模块、urllib模块
(大家要知道爬虫应该在合理的范围内爬取数据,不要有违法违纪的行为)