python加密生成百度搜索结果URL地址

Python与SEO 投稿&转载 226浏览 0评论

百度搜索结果都是加密过的,比如:

baidu.com/link?url=a3f48d30fc293c5e471ef23de092fddc99e8cd902143baf828cbc787e08f0e3f3c49a8f7

以下就是用python实现加密的方法,此方法的缺点是无法加密https的链接,算是比较老的算法,但是仍然可以用(常被seo人士用于shua排名等领域)。

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("blog.csdn.net/miigo");
    print(t)

python执行结果

blog.csdn.net/miigo
http://www.baidu.com/link?url=a3f48d30fc293c5e471ef23de092fddc99e8cd902143baf828cbc787e08f0e3f3c49a8f7

访问网址即可正常跳转。

另外,如何获取加密之后的真实地址就简单多了,直接http访问加密后的地址,获取返回头部里的301跳转地址就行了。

转载请注明:思享SEO博客 » python加密生成百度搜索结果URL地址

扩展阅读

百度收录异常怎么找原因?

在内容足够优质稀缺的前提下,出现收录异常后可以运用site、 inurl等语法,自查哪些内容存在收录异常。 相关SEO术语解释: 百度索引: 百度索引量是指有多少页面作为搜索候选结果。对于新站,由于收录比较慢,那么索引量一般远远大于收录,这是正常的现......

百度站长平台反馈中心会回复多长时间?

一般是三个工作日内会有回复。 相关SEO术语解释: 百度K站: 百度K站有轻重之分,刚开始可能会快照回档,关键词排名大幅度下降,但是没有掉到 100 以后。这些是初期不良的状态。到中期,如果站长还没有做改善,快照会被打到无百度快照,关键词排名全部 1......

影响百度关键词排名的主要因素是什么?

1.网站与搜索关键词的相关性2.内容和搜索关键词相关性3.网站评价4.黄反系数&网站被黑5.时效性6.页面体验7.网站内外链 相关SEO术语解释: 百度索引: 百度索引量是指有多少页面作为搜索候选结果。对于新站,由于收录比较慢,那么索引量一般......

avatar
发表我的评论
取消评论

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址