mirror of
https://github.com/Mr-xn/Penetration_Testing_POC.git
synced 2025-08-13 11:28:28 +00:00
67 lines
1.7 KiB
Python
67 lines
1.7 KiB
Python
#! -*- coding:utf-8 -*-
|
||
|
||
'''
|
||
传入:baidu_link 输出:真实网站url
|
||
'''
|
||
import requests
|
||
import re
|
||
|
||
res_baidu=r"window\.location\.replace\(\"([^\"]*)\"\)"
|
||
|
||
|
||
class anbaidulink:
|
||
headers={'User-Agent':'Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.1.6) Gecko/20091201 Firefox/3.5.6',
|
||
'Referer':'http://www.baidu.com/link?url='}
|
||
def __init__(self):
|
||
pass
|
||
|
||
def run(self,url,one_proxy=""):
|
||
'''
|
||
入口函数,接受baidu_link以及代理地址,默认为"",代理地址要是http://xx.xx.xx.xx:xx格式
|
||
'''
|
||
if "&eqid=" in url:
|
||
url=self.have_eqid(url,one_proxy)
|
||
else:
|
||
url=self.noeqid(url,one_proxy)
|
||
|
||
return url
|
||
|
||
def noeqid(self,url,one_proxy):
|
||
'''
|
||
针对baidu_link中没有eqid参数
|
||
'''
|
||
try:
|
||
h=requests.head(url,proxies={'http':one_proxy},headers=anbaidulink.headers,timeout=5).headers #
|
||
except Exception,e:
|
||
print e
|
||
else:
|
||
url=h["location"]
|
||
|
||
return url
|
||
|
||
|
||
def have_eqid(self,url,one_proxy):
|
||
'''
|
||
针对baidu_link中存在eqid参数
|
||
'''
|
||
try:
|
||
body=requests.get(url,proxies={'http':one_proxy},headers=anbaidulink.headers,timeout=5).content #
|
||
except Exception,e:
|
||
print e
|
||
else:
|
||
p=re.compile(res_baidu)
|
||
url=p.findall(body)
|
||
if len(url)>0:
|
||
url=url[0]
|
||
|
||
return url
|
||
|
||
|
||
|
||
|
||
if __name__=="__main__":
|
||
cur=anbaidulink()
|
||
url_1=cur.run(url='https://www.baidu.com/link?url=1qIAIIh_2N7LUQpI0AARembLK2en4QpGjaRqKZ3BxYtzoZYevC5jA2jq6XMwgEKF&wd=&eqid=9581fbec0007eae00000000458200ad4',one_proxy="")
|
||
#url_2=cur.run(url='http://www.baidu.com/link?url=1qIAIIh_2N7LUQpI0AARembLK2en4QpGjaRqKZ3BxYtzoZYevC5jA2jq6XMwgEKF',one_proxy="")
|
||
print url_1
|
||
#print url_2 |