用Python实现百度URL参数的加密解密。
代码如下:
import os
ascii = [
[
' ', '!', '"', '#', '$', '%', '&', "'", '(', ')', '*', '+', ',', '-', '.', '/'],
[
'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', ':', ';', '<', '=', '>', '?'],
[
'@', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O'],
[
'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', '[', '\\', ']', '^', '_'],
[
'`', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o'],
[
'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '{', '|', '}', '~', ' ']]
data = [
[
13, 10],
[
10, 1],
[
16, 15],
[
7, 6],
[
5, 13],
[
18, 9],
[
13, 11],
[
7, 12],
[
10, 5],
[
15, 9],
[
15, 9],
[
13, 5],
[
16, 11],
[
0, 1],
[
8, 2],
[
8, 5],
[
0, 0],
[
17, 15],
[
14, 8],
[
2, 1],
[
10, 5],
[
17, 14],
[
16, 5],
[
3, 8],
[
14, 9],
[
5, 8],
[
15, 1],
[
3, 15],
[
13, 10],
[
10, 12],
[
5, 7],
[
0, 2],
[
18, 14],
[
0, 15],
[
1, 6],
[
13, 5],
[
2, 1],
[
15, 14],
[
18, 8],
[
18, 9],
[
1, 10],
[
14, 14],
[
13, 2],
[
5, 3],
[
5, 8],
[
0, 4],
[
1, 5],
[
16, 1],
[
8, 1],
[
2, 5],
[
10, 7],
[
10, 15],
[
14, 14],
[
17, 3],
[
15, 0],
[
14, 5],
[
7, 7],
[
3, 4],
[
14, 8],
[
12, 0],
[
13, 12],
[
12, 3],
[
6, 5],
[
3, 1],
[
1, 14],
[
5, 4],
[
0, 12],
[
7, 0],
[
10, 7],
[
15, 12],
[
8, 2],
[
18, 15],
[
3, 12],
[
1, 12],
[
0, 15],
[
17, 4],
[
17, 2],
[
11, 1],
[
3, 12],
[
11, 5],
[
0, 13],
[
1, 1],
[
2, 12]]
y = [
'0123456789abcdef',
'1032547698badcfe',
'23016745ab89efcd',
'32107654ba98fedc',
'45670123cdef89ab',
'54761032dcfe98ba',
'67452301efcdab89',
'76543210fedcba98',
'89abcdef01234567',
'98badcfe10325476',
'ab89efcd23016745',
'ba98fedc32107654',
'cdef89ab45670123',
'dcfe98ba54761032',
'efcdab8967452301',
'fedcba9876543210']
x = [
'016745',
'107654',
'234567',
'321076',
'325476',
'452301',
'543210',
'670123',
'765432',
'761032',
'89abcd',
'89efcd',
'98fedc',
'abcdef',
'badcfe',
'cdab89',
'dcba98',
'ef89ab',
'fe98ba']
def encode_url(url):
print(url)
url_re = ''
mi = ''
for i, ch in enumerate(url):
f_real_x = None
f_real_y = None
for real_x, real_y_chs in enumerate(ascii):
for real_y, real_y_ch in enumerate(real_y_chs):
if real_y_ch == ch:
f_real_x = real_x
f_real_y = real_y
if f_real_y is not None and f_real_x is not None:
this_data_x = x[data[i][0]]
encode_x = this_data_x[f_real_x]
mi = mi + encode_x
this_data_y = y[data[i][1]]
encode_y = this_data_y[f_real_y]
mi = mi + encode_y
return 'http://www.baidu.com/link?url=a3f48d30fc293c5e471ef23de092fddc99' + mi
if __name__ == '__main__':
t = encode_url("www.xfqiao.com");
print(t)
Pyhon的安装就做过多描述了,以上代码用Python运行后能生成一个类似https://www.baidu.com/link?url=*******的URL,访问这个URL能正常跳转到我们自己定义的链接地址。
随着移动应用市场的蓬勃发展,iOS HTML5 App开发已经成为了一个备受关注的领域。在这个技术日新月异的时代,我们不禁要问:iOS HTML5 App开发的未来究竟会如何发展?
iOS HTML5 App开发是指利用HTML5、CSS和JavaScript等技术开发能够在iOS设备上运行的应用程序。相比于传统的原生iOS App开发,HTML5 App开发具有更多的优势。首先,HTML5是一种跨平台技术,可以在多个操作系统和设备上运行,这为开发者节省了大量的时间和资源。其次,HTML5 App可以通过浏览器直接访问,无需下载和安装,大大降低了用户的使用门槛。此外,HTML5还支持离线访问、推送通知等功能,为开发者提供了更多的创新空间。
然而,iOS HTML5 App开发也面临着一些挑战。首先,相比于原生App,HTML5 App的性能和体验可能有所欠缺。尽管HTML5在不断进步,但与原生App相比,仍存在一定的差距。其次,由于HTML5是跨平台技术,开发者在编写代码时需要考虑不同浏览器和设备的兼容性,这增加了开发的复杂性。此外,由于Apple对于Web技术的限制,HTML5 App在某些功能和权限上可能受到限制。
然而,随着技术的不断发展,iOS HTML5 App开发也在不断进步和改进。一方面,HTML5的性能正在不断提升,新的标准和技术不断涌现,使得HTML5 App在性能和体验上逐渐接近原生App。另一方面,开发者也在积极探索和应用新的技术,如PWA(Progressive Web App)和Hybrid App,以弥补HTML5 App的不足之处。这些新的技术使得HTML5 App能够更好地与原生功能集成,提供更好的用户体验。