当前位置: 首页>編程日記>正文

python攻击校园网_python爬虫 模拟登陆校园网-初级

python攻击校园网_python爬虫 模拟登陆校园网-初级

最近跟同学学习爬虫的时候看到网上有个帖子,好像是山大校园网不稳定,用py做了个模拟登陆很有趣,于是我走上了一条不归路.....

先上一张校园网截图

首先弄清一下模拟登陆的原理:

1:服务器判定浏览器登录使用浏览器标识,需要模拟登陆

2: 需要post账号,密码,以及学校id

python走起,我用的2.7版本,用notepad++写的,绑定python可以直接运行

由于是模拟网页登陆,需要导入urllib urllib2 cookielib库,前两个有与网页直接的接口,cookielib就是用来处理cookie的

先了解一下这几个库函数 一片不错的博客

http://www.cnblogs.com/mmix2009/p/3226775.html

ok,开始构建一个opener

cookie=cookielib.CookieJar()

opener=urllib2.build_opener(urllib2.HTTPCookieProcessor(cookie))

用urllib2.HTTOCookieProcessor处理CookieJar获得的cookie,并被build_opener处理

然后构建一下需要post的header,这个地址并不是我们输入账号密码的地址,而是提交数据被处理的地址,在登陆的时候用浏览器抓一下:

嗯 就是右边的那个URL,我们最后提交的网址就是那个。我们看一下他的header

差不多就这些,可以都写上,也可以只写服务器验证的UA等等

需要提交的数据:

data={

"username":"xxxxxxxx",

"password":"xxxxx",

}

post_data=urllib.urlencode(data)

然后就是post了,使用Requset(url,post_data,header)

req=urllib2.Request('http://139.198.3.98/sdjd/userAction!login.action',post_data,headers)

content=opener.open(req)

再open(req)放到content里,print一下试试是否成功。

然后.....然后发现失败了找找bug.....

因为是学习的网上的,那个简单的例子只有用户名和密码,而这个登陆还要选择大学.......

好吧,那就先找下源码,结果没找到,就从header里找,果然在cookie里有个schoo id=XXXX,没错了,就是这个了,于是在data里再加上这个,结果提交了以后还是失败。最后发现提交的data里的userName,password,school_必须和request里的名称大小写下划线什么的要一致:

最终代码(账号密码什么的用XXXX代替了):

import urllib

import urllib2

import cookielib

data={

"userName":"xxxxxxxx",

"password":"xxxxx",

"school_id":"xxxx"

}

post_data=urllib.urlencode(data)

cookie=cookielib.CookieJar()

opener=urllib2.build_opener(urllib2.HTTPCookieProcessor(cookie))

headers={

'Accept': 'text/html, application/xhtml+xml, image/jxr, */*',

'Accept-Encoding': 'gzip, deflate',

'Accept-Language': 'en-US, en; q=0.8, zh-Hans-CN; q=0.5, zh-Hans; q=0.3',

'Connection': 'Keep-Alive',

'Host': '139.198.3.98',

'Referer': 'http://139.198.3.98/sdjd/protalAction!loginInit.action?wlanuserip=10.177.31.212&basip=124.128.40.39',

'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.79 Safari/537.36 Edge/14.14393',

'X-Requested-With': 'XMLHttpRequest'

}

req=urllib2.Request('http://139.198.3.98/sdjd/userAction!login.action',post_data,headers)

content=opener.open(req)

print content.read().decode("utf-8")

运行一下:

初步success~以后在深一步研究

还有求dalao解答我从notepad++上用#注释没效果咋回事......

------------------------------------------------------------------------------------------------------------------------------------

------------------------------------------------------------------------------------------------------------------------------------

学习了requests库 果然好用。。。贴一下代码

import requests

se=requests.Session()

url='http://139.198.3.98/sdjd/userAction!login.action'data={"userName":"xxxxxxxx","password":"xxxxx","school_id":"xxxx"}

headers={'Accept': 'text/html, application/xhtml+xml, image/jxr, */*','Accept-Encoding': 'gzip, deflate','Accept-Language': 'en-US, en; q=0.8, zh-Hans-CN; q=0.5, zh-Hans; q=0.3','Connection': 'Keep-Alive','Host': '139.198.3.98','Referer': 'http://139.198.3.98/sdjd/protalAction!loginrInit.action?wlanuserip=10.177.31.212&basip=124.128.40.39','User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.79 Safari/537.36 Edge/14.14393','X-Requested-With': 'XMLHttpRequest'}

content=se.post(url,data=data,headers=headers)

print content.text

// 之前#没用是没保存成py格式直接运行了......


https://www.fengoutiyan.com/post/14457.html

相关文章:

  • Python爬虫滑动验证
  • python爬虫模拟登录多用户
  • python网络安全
  • 用python写网络爬虫
  • 爬虫登录
  • python爬虫接单网
  • python爬虫代理ip
  • 利用python爬取
  • 鏡像模式如何設置在哪,圖片鏡像操作
  • 什么軟件可以把圖片鏡像翻轉,C#圖片處理 解決左右鏡像相反(旋轉圖片)
  • 手機照片鏡像翻轉,C#圖像鏡像
  • 視頻鏡像翻轉軟件,python圖片鏡像翻轉_python中鏡像實現方法
  • 什么軟件可以把圖片鏡像翻轉,利用PS實現圖片的鏡像處理
  • 照片鏡像翻轉app,java實現圖片鏡像翻轉
  • 什么軟件可以把圖片鏡像翻轉,python圖片鏡像翻轉_python圖像處理之鏡像實現方法
  • matlab下載,matlab如何鏡像處理圖片,matlab實現圖像鏡像
  • 圖片鏡像翻轉,MATLAB:鏡像圖片
  • 鏡像翻轉圖片的軟件,圖像處理:實現圖片鏡像(基于python)
  • canvas可畫,JavaScript - canvas - 鏡像圖片
  • 圖片鏡像翻轉,UGUI優化:使用鏡像圖片
  • Codeforces,CodeForces 1253C
  • MySQL下載安裝,Mysql ERROR: 1253 解決方法
  • 勝利大逃亡英雄逃亡方案,HDU - 1253 勝利大逃亡 BFS
  • 大一c語言期末考試試題及答案匯總,電大計算機C語言1253,1253《C語言程序設計》電大期末精彩試題及其問題詳解
  • lu求解線性方程組,P1253 [yLOI2018] 扶蘇的問題 (線段樹)
  • c語言程序設計基礎題庫,1253號C語言程序設計試題,2016年1月試卷號1253C語言程序設計A.pdf
  • 信奧賽一本通官網,【信奧賽一本通】1253:抓住那頭牛(詳細代碼)
  • c語言程序設計1253,1253c語言程序設計a(2010年1月)
  • 勝利大逃亡英雄逃亡方案,BFS——1253 勝利大逃亡
  • 直流電壓測量模塊,IM1253B交直流電能計量模塊(艾銳達光電)
  • c語言程序設計第三版課后答案,【渝粵題庫】國家開放大學2021春1253C語言程序設計答案
  • 18轉換為二進制,1253. 將數字轉換為16進制
  • light-emitting diode,LightOJ-1253 Misere Nim
  • masterroyale魔改版,1253 Dungeon Master
  • codeformer官網中文版,codeforces.1253 B
  • c語言程序設計考研真題及答案,2020C語言程序設計1253,1253計算機科學與技術專業C語言程序設計A科目2020年09月國家開 放大學(中央廣播電視大學)
  • c語言程序設計基礎題庫,1253本科2016c語言程序設計試題,1253電大《C語言程序設計A》試題和答案200901
  • 肇事逃逸車輛無法聯系到車主怎么辦,1253尋找肇事司機