当前位置:首页 » 操作系统 » axj源码

axj源码

发布时间: 2023-05-16 15:32:31

㈠ 汇编语言怎么产生随机数

NASM汇编:

section	.text
global_start;gcc必须的声明
rand:;生成随机数,返回值在eax
pushedx
rdtsc;内核纳秒级时间作为种子
imuleax,edx
addeax,0xF1E2D3C4
imuleax,0xB5A69788
popedx
ret
_start:;程序入口
nop
callrand;生成随机数

movesi,msg
movecx,len
callbinasc;转换成ascii

mov edx,棚简ecx;显示
mov ecx,esi
mov ebx,1
mov eax,袭老4
int 0x80
moveax,1;退出
xorebx,ebx
int80h

;将链禅裤数字转换成ascii
binasc:
push edx
push ebx
push edi
push eax
mov edi,esi
ba1:
mov byte[esi],''
inc esi
loop ba1
mov ebx,10
or eax,eax
jns ba2
neg eax
ba2:
xor edx,edx
div ebx
add dl,'0'
dec esi
mov [esi],dl
inc ecx
cmp esi,edi
jz ba4
or eax,eax
jnz ba2
pop eax
or eax,eax
jns ba3
dec esi
mov byte[esi],'-'
inc ecx
ba3:
pop edi
pop ebx
pop edx
ret
ba4:
pop eax
jmp ba3
section .data

msg db '',0xa
len equ $-msg

多次运行结果:

python2 能使用requests吗

由于公司要用到模拟用户登录,于是用学校图书馆读者登录来进行练习。

工具是python2 + requests第三方库+火狐浏览器的firebug进行http抓包

目标 用python成功登录学校图书馆

接下来几篇会利用urllib和urllib2标准库进行登录

以下为具体步骤:

1 打开学校图书馆网址,以下为登录界面


综合以上分析,利用requests库进行模拟用户登录。这里的post参数采用了之前图片的源码形式,使得参数顺序匹配

import requests

url = "http://210.32.205.60/login.aspx"
# 学校图书馆登录url
header = {"Accept":"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
"Accept-Encoding":"gzip, deflate",
"Accept-Language":"zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3",
"Connection":"keep-alive",
"Content-Type":"application/x-www-form-urlencoded",
"Host":"210.32.205.60",
"Referer": "http://210.32.205.60/login.aspx",
"Upgrade-Insecure-Requests":"1",
"User-Agent":"Mozilla/5.0 (Windows NT 6.1; rv:54.0) Gecko/20100101 Firefox/54.0"
}

body = b'__VIEWSTATE=%uMtIIHXEj%&__VIEWSTATEGENERATOR=C2EE9ABB&__EVENTVALIDATION=%2FwEdAAbAeS%2BByzNg%%2FzVFQdp1z%2BnYWZ%%2BIuKmLNV%%3D%3D&DropDownList1=0&TextBox1=读者号&TextBox2=密码&ImageButton1.x=44&ImageButton1.y=12'r = requests.post(url, data=body, headers=header)

print r.text

以上为一次提交,没有进行重定向截取。

如果想用reque库截取重定向,在这个图书馆登录中则需要进行两次操作,这里相当于只做了post请求,头部,post参数都不变,只不过在requests.post()内设置了参数

r = requests.post(url, data=body, headers=header, allow_redirects=False)
# 设置 allow_redirects=False 使得禁止重定向
aspid = r.headers["Set-Cookie"] # 返回页面的头部的cookie
print r.status_code # 输出302

如果再想登陆图书馆页面,那么需要将cookie重新加入新的url上,进行get请求的提交,此时url为/Default.aspx.

url ="http://210.32.205.60/Default.aspx"
header = {
"Accept": "image/jpeg, application/x-ms-application, image/gif, application/xaml+xml, image/pjpeg, application/x-ms-xbap, */*",
"Referer": "http://210.32.205.60/login.aspx",
"Accept-Language": "zh-CN",
"User-Agent": "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0)",
"Accept-Encoding": "gzip, deflate",
"Host": "210.32.205.60",
"Connection": "Keep-Alive",
"Pragma": "no-cache",
"Cookie": aspid
}
r = requests.get(url=url,headers=header)
print r.status_code
print r.text

接下来的几篇是利用python2的urllib2和urllib进行相同的模拟用户登录。

ps 由于urllib2处理重定向的时候不会将cookie带上,会导致页面不能正确爬取,所以要处理重定向。解决urllib重定向文章在此,分别介绍了urllib2自动处理重定向(带上cookie),和urllib2阻止重定向,返回cookie。

利用urllib2进行自动处理重定向,模拟浏览器提交post一次,就可以登录图书馆的文章在这。

利用urllib2处理重定向,使得重定向截断,获取cookie,根据cookie用代码实现重定向,登录图书馆的文章在此。

热点内容
光遇发光耳机怎么设置安卓 发布:2025-05-15 05:32:03 浏览:111
台电安卓平板系统太低怎么办 发布:2025-05-15 05:20:00 浏览:508
安装了zlib编译报错 发布:2025-05-15 05:19:56 浏览:167
二分算法无序 发布:2025-05-15 05:18:22 浏览:29
网易我的世界服务器组件怎么安装 发布:2025-05-15 05:16:58 浏览:312
如何复制密码狗 发布:2025-05-15 05:15:28 浏览:737
c语言报告三 发布:2025-05-15 05:10:37 浏览:844
09压缩饼干 发布:2025-05-15 05:05:58 浏览:279
迭代法编程c 发布:2025-05-15 04:58:01 浏览:815
用什么dns服务器地址快 发布:2025-05-15 04:52:59 浏览:27