|
地板
发表于 2015-8-19 01:47:30
|
只看该作者
香港特别行政区*
静易模块源码里面,对HTTPS有判断的。另外你哪个地方用的是WinInet
.版本 2。 |
网页_访问 | 字节集 | | |
网址 | 文本型 | | | | 访问方式 | 整数型 | | | | 提交信息 | 文本型 | | | | 提交Cookies | 文本型 | | | | 返回Cookies | 文本型 | | | | 附加XY头 | 文本型 | | | | 返回XY头 | 文本型 | | | | 禁止重定向 | 逻辑型 | | | | 字节集提交 | 字节集 | | | | 代理地址 | 文本型 | | | |
变量名 | 类 型 | 静态 | 数组 | 备 注 | 局_Internet句柄 | 整数型 | | | 局_Internet连接句柄 | 整数型 | | | 局_HTTP请求句柄 | 整数型 | | | 局_计次 | 整数型 | | | 局_字节集 | 字节集 | | | 局_访问方式 | 文本型 | | | 局_User_Agent | 文本型 | | | 局_返回XY头 | 文本型 | | 0 | 局_页面内容 | 字节集 | | | 局_请求标记 | 整数型 | | | 局_重定向地址 | 文本型 | | | 局_HTTPS | 逻辑型 | | | 如果真 (访问方式 < 0 或 访问方式 > 2 ) 访问方式 = 0 局_访问方式 = 多项选择 (访问方式 + 1, “GET”, “POST”, “HEAD”) 如果真 (到小写 (取文本左边 (网址, 5 )) = “https”) 局_HTTPS = 真  判断 (寻找文本 (附加XY头, “User-Agent:”, , 真) ≠ -1 ) 局_User_Agent = 删首尾空 (文本_取出中间文本 (附加XY头, “User-Agent:”, #换行符 ))  如果真 (局_User_Agent = “”)  局_User_Agent = 内部_XY头取值 (附加XY头 )   局_User_Agent = “Mozilla/4.0 (compatible; MSIE 9.0; Windows NT 6.1)” 判断 (代理地址 = “”) 局_Internet句柄 = InternetOpenA (局_User_Agent, 1, 字符 (0 ), 字符 (0 ), 0 ) 判断 (局_HTTPS )  局_Internet句柄 = InternetOpenA (局_User_Agent, 3, 代理地址, “”, 0 ) 局_Internet句柄 = InternetOpenA (局_User_Agent, 3, “http=” + 代理地址, “”, 0 )  如果真 (局_Internet句柄 = 0 ) InternetCloseHandle (局_Internet句柄 ) 返回 ({ })局_Internet连接句柄 = InternetConnectA (局_Internet句柄, 网页_取域名 (网址), 网页_取端口 (网址), 字符 (0), 字符 (0), 3, 0, 0) 如果真 (局_Internet连接句柄 = 0 ) InternetCloseHandle (局_Internet连接句柄 ) InternetCloseHandle (局_Internet句柄 ) 返回 ({ }) 局_请求标记 = 位或 ( #INTERNET_FLAG_RELOAD, #INTERNET_COOKIE_THIRD_PARTY ) 如果真 (取反 (是否为空 (提交Cookies )) ) 局_请求标记 = 位或 (局_请求标记, #INTERNET_FLAG_NO_COOKIES ) 如果真 (禁止重定向 ) 局_请求标记 = 位或 (局_请求标记, #INTERNET_FLAG_NO_AUTO_REDIRECT ) 判断 (局_HTTPS ) 局_请求标记 = 位或 (局_请求标记, #INTERNET_FLAG_SECURE ) 局_请求标记 = 位或 (局_请求标记, #INTERNET_FLAG_IGNORE_REDIRECT_TO_HTTPS ) 局_HTTP请求句柄 = HttpOpenRequestA (局_Internet连接句柄, 局_访问方式, 网页_取页面地址 (网址 ), “HTTP/1.1”, 字符 (0 ), 字符 (0 ), 局_请求标记, 0 ) 如果真 (局_HTTP请求句柄 = 0 ) InternetCloseHandle (局_HTTP请求句柄 ) InternetCloseHandle (局_Internet连接句柄 ) InternetCloseHandle (局_Internet句柄 ) 返回 ({ }) 判断 (附加XY头 = “”) 附加XY头 = “Accept: */*” 如果真 (寻找文本 (附加XY头, “Accept:”, , 假) = -1 )  附加XY头 = 附加XY头 + #换行符 + “Accept: */*”   如果真 (寻找文本 (附加XY头, “Referer:”, , 假) = -1 ) 附加XY头 = 附加XY头 + #换行符 + “Referer: ” + 网址  如果真 (寻找文本 (附加XY头, “Accept-Language:”, , 假) = -1 ) 附加XY头 = 附加XY头 + #换行符 + “Accept-Language: zh-cn” 如果真 (寻找文本 (附加XY头, “Content-Type:”, , 假) = -1 ) 附加XY头 = 附加XY头 + #换行符 + “Content-Type: application/x-www-form-urlencoded” 如果真 (提交Cookies ≠ “”) 附加XY头 = 附加XY头 + #换行符 + “Cookie: ” + 提交Cookies  判断 (访问方式 = 0 ) HttpSendRequestA (局_HTTP请求句柄, 附加XY头, 取文本长度 (附加XY头 ), “”, 0 ) 如果真 (字节集提交 = { })  字节集提交 = 到字节集 (提交信息 ) HttpSendRequestA_字节集 (局_HTTP请求句柄, 附加XY头, 取文本长度 (附加XY头), 字节集提交, 取字节集长度 (字节集提交)) 局_计次 = 0 判断循环首 (真) 局_字节集 = 取空白字节集 (1024 ) InternetReadFile (局_HTTP请求句柄, 局_字节集, 1024, 局_计次 ) 判断 (局_计次 = 0 ) 跳出循环 ()  局_页面内容 = 局_页面内容 + 取字节集左边 (局_字节集, 局_计次 )  判断循环尾 ()返回XY头 = 取空白文本 (5000 )HttpQueryInfoA (局_HTTP请求句柄, 22, 返回XY头, 5000, 0 )返回XY头 = 子文本替换 (返回XY头, “Set-Cookie”, “Set-Cookie”, , , 假)InternetCloseHandle (局_HTTP请求句柄 )InternetCloseHandle (局_Internet连接句柄 )InternetCloseHandle (局_Internet句柄 )局_返回XY头 = 分割文本 (返回XY头, #换行符, )返回Cookies = “” 计次循环首 (取数组成员数 (局_返回XY头 ), 局_计次 ) 如果真 (寻找文本 (局_返回XY头 [局_计次 ], “Set-Cookie”, , 假) ≠ -1 )  判断 (寻找文本 (局_返回XY头 [局_计次 ], “;”, , 假) ≠ -1 )   返回Cookies = 返回Cookies + 删首尾空 (文本_取出中间文本 (局_返回XY头 [局_计次 ], “Set-Cookie:”, “;”)) + “; ”   返回Cookies = 返回Cookies + 删首尾空 (子文本替换 (局_返回XY头 [局_计次 ], “Set-Cookie:”, , , , 假)) + “; ”     计次循环尾 ()返回Cookies = 取文本左边 (返回Cookies, 取文本长度 (返回Cookies ) - 2 ) 如果真 (取反 (是否为空 (提交Cookies )) ) 网页_Cookie合并更新 (提交Cookies, 返回Cookies )返回 (局_页面内容)
|
|