Initial commit
This commit is contained in:
commit
a3ed03bcad
62
PyGeoIP.py
Normal file
62
PyGeoIP.py
Normal file
@ -0,0 +1,62 @@
|
|||||||
|
#!/usr/bin/python3
|
||||||
|
|
||||||
|
import ipwhois
|
||||||
|
from ipwhois.net import Net
|
||||||
|
from ipwhois.asn import IPASN
|
||||||
|
import warnings
|
||||||
|
|
||||||
|
ipList = []
|
||||||
|
|
||||||
|
def lookupIP(inData):
|
||||||
|
try:
|
||||||
|
with warnings.catch_warnings():
|
||||||
|
warnings.filterwarnings("ignore", category=UserWarning)
|
||||||
|
ipnet = Net(inData)
|
||||||
|
ipobj = IPASN(ipnet)
|
||||||
|
results = ipobj.lookup()
|
||||||
|
# print(results)
|
||||||
|
return results
|
||||||
|
|
||||||
|
except ipwhois.exceptions.IPDefinedError:
|
||||||
|
pass # We do not care about local/invalid IPs
|
||||||
|
except Exception as e:
|
||||||
|
pass # Garbage data was given lol
|
||||||
|
|
||||||
|
|
||||||
|
def parseIPS():
|
||||||
|
with open("testData.txt", 'r') as f:
|
||||||
|
testdata = f.read()
|
||||||
|
|
||||||
|
data = testdata.split('\n')
|
||||||
|
for ip in data:
|
||||||
|
ip = ip.strip()
|
||||||
|
ipAddr = ip.split()
|
||||||
|
if len(ipAddr) == 2:
|
||||||
|
ipList.append(ipAddr)
|
||||||
|
else:
|
||||||
|
pass
|
||||||
|
|
||||||
|
parseIPS()
|
||||||
|
|
||||||
|
ff = lookupIP("122.106.224.146")
|
||||||
|
|
||||||
|
print(ff["asn_country_code"])
|
||||||
|
|
||||||
|
for ips in ipList:
|
||||||
|
# ccode = ipCheck(lookupIP(ips[1]))
|
||||||
|
ret = lookupIP(ips[1])
|
||||||
|
if ret == None:
|
||||||
|
continue
|
||||||
|
cc = ret["asn_country_code"]
|
||||||
|
desc = ret["asn_description"]
|
||||||
|
if cc == "AU" or cc == "NZ" or cc == "US":
|
||||||
|
continue
|
||||||
|
print("IP: {}\t\tCountry: {}\tDesc: {}\tCount: {}".format(ips[1], cc, desc, ips[0]))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# print(ipList[0])
|
||||||
|
# lookupIP("123.23.23.12")
|
||||||
|
|
||||||
|
##{'asn_registry': 'apnic', 'asn': '4134', 'asn_cidr': '220.174.0.0/16', 'asn_country_code': 'CN', 'asn_date': '2002-10-30', 'asn_description': 'CHINANET-BACKBONE No.31,Jin-rong Street, CN'}
|
||||||
249
cc.csv
Normal file
249
cc.csv
Normal file
@ -0,0 +1,249 @@
|
|||||||
|
Afghanistan,AF
|
||||||
|
Åland Islands,AX
|
||||||
|
Albania,AL
|
||||||
|
Algeria,DZ
|
||||||
|
American Samoa,AS
|
||||||
|
Andorra,AD
|
||||||
|
Angola,AO
|
||||||
|
Anguilla,AI
|
||||||
|
Antarctica,AQ
|
||||||
|
Antigua and Barbuda,AG
|
||||||
|
Argentina,AR
|
||||||
|
Armenia,AM
|
||||||
|
Aruba,AW
|
||||||
|
Australia,AU
|
||||||
|
Austria,AT
|
||||||
|
Azerbaijan,AZ
|
||||||
|
Bahamas,BS
|
||||||
|
Bahrain,BH
|
||||||
|
Bangladesh,BD
|
||||||
|
Barbados,BB
|
||||||
|
Belarus,BY
|
||||||
|
Belgium,BE
|
||||||
|
Belize,BZ
|
||||||
|
Benin,BJ
|
||||||
|
Bermuda,BM
|
||||||
|
Bhutan,BT
|
||||||
|
Bolivia (Plurinational State of),BO
|
||||||
|
"Bonaire, Sint Eustatius and Saba",BQ
|
||||||
|
Bosnia and Herzegovina,BA
|
||||||
|
Botswana,BW
|
||||||
|
Bouvet Island,BV
|
||||||
|
Brazil,BR
|
||||||
|
British Indian Ocean Territory,IO
|
||||||
|
Brunei Darussalam,BN
|
||||||
|
Bulgaria,BG
|
||||||
|
Burkina Faso,BF
|
||||||
|
Burundi,BI
|
||||||
|
Cambodia,KH
|
||||||
|
Cameroon,CM
|
||||||
|
Canada,CA
|
||||||
|
Cabo Verde,CV
|
||||||
|
Cayman Islands,KY
|
||||||
|
Central African Republic,CF
|
||||||
|
Chad,TD
|
||||||
|
Chile,CL
|
||||||
|
China,CN
|
||||||
|
Christmas Island,CX
|
||||||
|
Cocos (Keeling) Islands,CC
|
||||||
|
Colombia,CO
|
||||||
|
Comoros,KM
|
||||||
|
Congo,CG
|
||||||
|
Congo (Democratic Republic of the),CD
|
||||||
|
Cook Islands,CK
|
||||||
|
Costa Rica,CR
|
||||||
|
Côte d'Ivoire,CI
|
||||||
|
Croatia,HR
|
||||||
|
Cuba,CU
|
||||||
|
Curaçao,CW
|
||||||
|
Cyprus,CY
|
||||||
|
Czech Republic,CZ
|
||||||
|
Denmark,DK
|
||||||
|
Djibouti,DJ
|
||||||
|
Dominica,DM
|
||||||
|
Dominican Republic,DO
|
||||||
|
Ecuador,EC
|
||||||
|
Egypt,EG
|
||||||
|
El Salvador,SV
|
||||||
|
Equatorial Guinea,GQ
|
||||||
|
Eritrea,ER
|
||||||
|
Estonia,EE
|
||||||
|
Ethiopia,ET
|
||||||
|
Falkland Islands (Malvinas),FK
|
||||||
|
Faroe Islands,FO
|
||||||
|
Fiji,FJ
|
||||||
|
Finland,FI
|
||||||
|
France,FR
|
||||||
|
French Guiana,GF
|
||||||
|
French Polynesia,PF
|
||||||
|
French Southern Territories,TF
|
||||||
|
Gabon,GA
|
||||||
|
Gambia,GM
|
||||||
|
Georgia,GE
|
||||||
|
Germany,DE
|
||||||
|
Ghana,GH
|
||||||
|
Gibraltar,GI
|
||||||
|
Greece,GR
|
||||||
|
Greenland,GL
|
||||||
|
Grenada,GD
|
||||||
|
Guadeloupe,GP
|
||||||
|
Guam,GU
|
||||||
|
Guatemala,GT
|
||||||
|
Guernsey,GG
|
||||||
|
Guinea,GN
|
||||||
|
Guinea-Bissau,GW
|
||||||
|
Guyana,GY
|
||||||
|
Haiti,HT
|
||||||
|
Heard Island and McDonald Islands,HM
|
||||||
|
Holy See,VA
|
||||||
|
Honduras,HN
|
||||||
|
Hong Kong,HK
|
||||||
|
Hungary,HU
|
||||||
|
Iceland,IS
|
||||||
|
India,IN
|
||||||
|
Indonesia,ID
|
||||||
|
Iran (Islamic Republic of),IR
|
||||||
|
Iraq,IQ
|
||||||
|
Ireland,IE
|
||||||
|
Isle of Man,IM
|
||||||
|
Israel,IL
|
||||||
|
Italy,IT
|
||||||
|
Jamaica,JM
|
||||||
|
Japan,JP
|
||||||
|
Jersey,JE
|
||||||
|
Jordan,JO
|
||||||
|
Kazakhstan,KZ
|
||||||
|
Kenya,KE
|
||||||
|
Kiribati,KI
|
||||||
|
Korea (Democratic People's Republic of),KP
|
||||||
|
Korea (Republic of),KR
|
||||||
|
Kuwait,KW
|
||||||
|
Kyrgyzstan,KG
|
||||||
|
Lao People's Democratic Republic,LA
|
||||||
|
Latvia,LV
|
||||||
|
Lebanon,LB
|
||||||
|
Lesotho,LS
|
||||||
|
Liberia,LR
|
||||||
|
Libya,LY
|
||||||
|
Liechtenstein,LI
|
||||||
|
Lithuania,LT
|
||||||
|
Luxembourg,LU
|
||||||
|
Macao,MO
|
||||||
|
Macedonia (the former Yugoslav Republic of),MK
|
||||||
|
Madagascar,MG
|
||||||
|
Malawi,MW
|
||||||
|
Malaysia,MY
|
||||||
|
Maldives,MV
|
||||||
|
Mali,ML
|
||||||
|
Malta,MT
|
||||||
|
Marshall Islands,MH
|
||||||
|
Martinique,MQ
|
||||||
|
Mauritania,MR
|
||||||
|
Mauritius,MU
|
||||||
|
Mayotte,YT
|
||||||
|
Mexico,MX
|
||||||
|
Micronesia (Federated States of),FM
|
||||||
|
Moldova (Republic of),MD
|
||||||
|
Monaco,MC
|
||||||
|
Mongolia,MN
|
||||||
|
Montenegro,ME
|
||||||
|
Montserrat,MS
|
||||||
|
Morocco,MA
|
||||||
|
Mozambique,MZ
|
||||||
|
Myanmar,MM
|
||||||
|
Namibia,NA
|
||||||
|
Nauru,NR
|
||||||
|
Nepal,NP
|
||||||
|
Netherlands,NL
|
||||||
|
New Caledonia,NC
|
||||||
|
New Zealand,NZ
|
||||||
|
Nicaragua,NI
|
||||||
|
Niger,NE
|
||||||
|
Nigeria,NG
|
||||||
|
Niue,NU
|
||||||
|
Norfolk Island,NF
|
||||||
|
Northern Mariana Islands,MP
|
||||||
|
Norway,NO
|
||||||
|
Oman,OM
|
||||||
|
Pakistan,PK
|
||||||
|
Palau,PW
|
||||||
|
"Palestine, State of",PS
|
||||||
|
Panama,PA
|
||||||
|
Papua New Guinea,PG
|
||||||
|
Paraguay,PY
|
||||||
|
Peru,PE
|
||||||
|
Philippines,PH
|
||||||
|
Pitcairn,PN
|
||||||
|
Poland,PL
|
||||||
|
Portugal,PT
|
||||||
|
Puerto Rico,PR
|
||||||
|
Qatar,QA
|
||||||
|
Réunion,RE
|
||||||
|
Romania,RO
|
||||||
|
Russian Federation,RU
|
||||||
|
Rwanda,RW
|
||||||
|
Saint Barthélemy,BL
|
||||||
|
"Saint Helena, Ascension and Tristan da Cunha",SH
|
||||||
|
Saint Kitts and Nevis,KN
|
||||||
|
Saint Lucia,LC
|
||||||
|
Saint Martin (French part),MF
|
||||||
|
Saint Pierre and Miquelon,PM
|
||||||
|
Saint Vincent and the Grenadines,VC
|
||||||
|
Samoa,WS
|
||||||
|
San Marino,SM
|
||||||
|
Sao Tome and Principe,ST
|
||||||
|
Saudi Arabia,SA
|
||||||
|
Senegal,SN
|
||||||
|
Serbia,RS
|
||||||
|
Seychelles,SC
|
||||||
|
Sierra Leone,SL
|
||||||
|
Singapore,SG
|
||||||
|
Sint Maarten (Dutch part),SX
|
||||||
|
Slovakia,SK
|
||||||
|
Slovenia,SI
|
||||||
|
Solomon Islands,SB
|
||||||
|
Somalia,SO
|
||||||
|
South Africa,ZA
|
||||||
|
South Georgia and the South Sandwich Islands,GS
|
||||||
|
South Sudan,SS
|
||||||
|
Spain,ES
|
||||||
|
Sri Lanka,LK
|
||||||
|
Sudan,SD
|
||||||
|
Suriname,SR
|
||||||
|
Svalbard and Jan Mayen,SJ
|
||||||
|
Swaziland,SZ
|
||||||
|
Sweden,SE
|
||||||
|
Switzerland,CH
|
||||||
|
Syrian Arab Republic,SY
|
||||||
|
"Taiwan, Province of China",TW
|
||||||
|
Tajikistan,TJ
|
||||||
|
"Tanzania, United Republic of",TZ
|
||||||
|
Thailand,TH
|
||||||
|
Timor-Leste,TL
|
||||||
|
Togo,TG
|
||||||
|
Tokelau,TK
|
||||||
|
Tonga,TO
|
||||||
|
Trinidad and Tobago,TT
|
||||||
|
Tunisia,TN
|
||||||
|
Turkey,TR
|
||||||
|
Turkmenistan,TM
|
||||||
|
Turks and Caicos Islands,TC
|
||||||
|
Tuvalu,TV
|
||||||
|
Uganda,UG
|
||||||
|
Ukraine,UA
|
||||||
|
United Arab Emirates,AE
|
||||||
|
United Kingdom of Great Britain and Northern Ireland,GB
|
||||||
|
United States of America,US
|
||||||
|
United States Minor Outlying Islands,UM
|
||||||
|
Uruguay,UY
|
||||||
|
Uzbekistan,UZ
|
||||||
|
Vanuatu,VU
|
||||||
|
Venezuela (Bolivarian Republic of),VE
|
||||||
|
Viet Nam,VN
|
||||||
|
Virgin Islands (British),VG
|
||||||
|
Virgin Islands (U.S.),VI
|
||||||
|
Wallis and Futuna,WF
|
||||||
|
Western Sahara,EH
|
||||||
|
Yemen,YE
|
||||||
|
Zambia,ZM
|
||||||
|
Zimbabwe,ZW
|
||||||
|
BIN
env/bin/__pycache__/ipwhois_cli.cpython-37.pyc
vendored
Normal file
BIN
env/bin/__pycache__/ipwhois_cli.cpython-37.pyc
vendored
Normal file
Binary file not shown.
BIN
env/bin/__pycache__/ipwhois_utils_cli.cpython-37.pyc
vendored
Normal file
BIN
env/bin/__pycache__/ipwhois_utils_cli.cpython-37.pyc
vendored
Normal file
Binary file not shown.
78
env/bin/activate
vendored
Normal file
78
env/bin/activate
vendored
Normal file
@ -0,0 +1,78 @@
|
|||||||
|
# This file must be used with "source bin/activate" *from bash*
|
||||||
|
# you cannot run it directly
|
||||||
|
|
||||||
|
deactivate () {
|
||||||
|
unset -f pydoc >/dev/null 2>&1
|
||||||
|
|
||||||
|
# reset old environment variables
|
||||||
|
# ! [ -z ${VAR+_} ] returns true if VAR is declared at all
|
||||||
|
if ! [ -z "${_OLD_VIRTUAL_PATH+_}" ] ; then
|
||||||
|
PATH="$_OLD_VIRTUAL_PATH"
|
||||||
|
export PATH
|
||||||
|
unset _OLD_VIRTUAL_PATH
|
||||||
|
fi
|
||||||
|
if ! [ -z "${_OLD_VIRTUAL_PYTHONHOME+_}" ] ; then
|
||||||
|
PYTHONHOME="$_OLD_VIRTUAL_PYTHONHOME"
|
||||||
|
export PYTHONHOME
|
||||||
|
unset _OLD_VIRTUAL_PYTHONHOME
|
||||||
|
fi
|
||||||
|
|
||||||
|
# This should detect bash and zsh, which have a hash command that must
|
||||||
|
# be called to get it to forget past commands. Without forgetting
|
||||||
|
# past commands the $PATH changes we made may not be respected
|
||||||
|
if [ -n "${BASH-}" ] || [ -n "${ZSH_VERSION-}" ] ; then
|
||||||
|
hash -r 2>/dev/null
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ! [ -z "${_OLD_VIRTUAL_PS1+_}" ] ; then
|
||||||
|
PS1="$_OLD_VIRTUAL_PS1"
|
||||||
|
export PS1
|
||||||
|
unset _OLD_VIRTUAL_PS1
|
||||||
|
fi
|
||||||
|
|
||||||
|
unset VIRTUAL_ENV
|
||||||
|
if [ ! "${1-}" = "nondestructive" ] ; then
|
||||||
|
# Self destruct!
|
||||||
|
unset -f deactivate
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# unset irrelevant variables
|
||||||
|
deactivate nondestructive
|
||||||
|
|
||||||
|
VIRTUAL_ENV="/home/ben/Documents/Projects/Python/PyGeoIP/env"
|
||||||
|
export VIRTUAL_ENV
|
||||||
|
|
||||||
|
_OLD_VIRTUAL_PATH="$PATH"
|
||||||
|
PATH="$VIRTUAL_ENV/bin:$PATH"
|
||||||
|
export PATH
|
||||||
|
|
||||||
|
# unset PYTHONHOME if set
|
||||||
|
if ! [ -z "${PYTHONHOME+_}" ] ; then
|
||||||
|
_OLD_VIRTUAL_PYTHONHOME="$PYTHONHOME"
|
||||||
|
unset PYTHONHOME
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -z "${VIRTUAL_ENV_DISABLE_PROMPT-}" ] ; then
|
||||||
|
_OLD_VIRTUAL_PS1="$PS1"
|
||||||
|
if [ "x" != x ] ; then
|
||||||
|
PS1="$PS1"
|
||||||
|
else
|
||||||
|
PS1="(`basename \"$VIRTUAL_ENV\"`) $PS1"
|
||||||
|
fi
|
||||||
|
export PS1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Make sure to unalias pydoc if it's already there
|
||||||
|
alias pydoc 2>/dev/null >/dev/null && unalias pydoc
|
||||||
|
|
||||||
|
pydoc () {
|
||||||
|
python -m pydoc "$@"
|
||||||
|
}
|
||||||
|
|
||||||
|
# This should detect bash and zsh, which have a hash command that must
|
||||||
|
# be called to get it to forget past commands. Without forgetting
|
||||||
|
# past commands the $PATH changes we made may not be respected
|
||||||
|
if [ -n "${BASH-}" ] || [ -n "${ZSH_VERSION-}" ] ; then
|
||||||
|
hash -r 2>/dev/null
|
||||||
|
fi
|
||||||
36
env/bin/activate.csh
vendored
Normal file
36
env/bin/activate.csh
vendored
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
# This file must be used with "source bin/activate.csh" *from csh*.
|
||||||
|
# You cannot run it directly.
|
||||||
|
# Created by Davide Di Blasi <davidedb@gmail.com>.
|
||||||
|
|
||||||
|
alias deactivate 'test $?_OLD_VIRTUAL_PATH != 0 && setenv PATH "$_OLD_VIRTUAL_PATH" && unset _OLD_VIRTUAL_PATH; rehash; test $?_OLD_VIRTUAL_PROMPT != 0 && set prompt="$_OLD_VIRTUAL_PROMPT" && unset _OLD_VIRTUAL_PROMPT; unsetenv VIRTUAL_ENV; test "\!:*" != "nondestructive" && unalias deactivate && unalias pydoc'
|
||||||
|
|
||||||
|
# Unset irrelevant variables.
|
||||||
|
deactivate nondestructive
|
||||||
|
|
||||||
|
setenv VIRTUAL_ENV "/home/ben/Documents/Projects/Python/PyGeoIP/env"
|
||||||
|
|
||||||
|
set _OLD_VIRTUAL_PATH="$PATH"
|
||||||
|
setenv PATH "$VIRTUAL_ENV/bin:$PATH"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
if ("" != "") then
|
||||||
|
set env_name = ""
|
||||||
|
else
|
||||||
|
set env_name = `basename "$VIRTUAL_ENV"`
|
||||||
|
endif
|
||||||
|
|
||||||
|
# Could be in a non-interactive environment,
|
||||||
|
# in which case, $prompt is undefined and we wouldn't
|
||||||
|
# care about the prompt anyway.
|
||||||
|
if ( $?prompt ) then
|
||||||
|
set _OLD_VIRTUAL_PROMPT="$prompt"
|
||||||
|
set prompt = "[$env_name] $prompt"
|
||||||
|
endif
|
||||||
|
|
||||||
|
unset env_name
|
||||||
|
|
||||||
|
alias pydoc python -m pydoc
|
||||||
|
|
||||||
|
rehash
|
||||||
|
|
||||||
76
env/bin/activate.fish
vendored
Normal file
76
env/bin/activate.fish
vendored
Normal file
@ -0,0 +1,76 @@
|
|||||||
|
# This file must be used using `. bin/activate.fish` *within a running fish ( http://fishshell.com ) session*.
|
||||||
|
# Do not run it directly.
|
||||||
|
|
||||||
|
function deactivate -d 'Exit virtualenv mode and return to the normal environment.'
|
||||||
|
# reset old environment variables
|
||||||
|
if test -n "$_OLD_VIRTUAL_PATH"
|
||||||
|
set -gx PATH $_OLD_VIRTUAL_PATH
|
||||||
|
set -e _OLD_VIRTUAL_PATH
|
||||||
|
end
|
||||||
|
|
||||||
|
if test -n "$_OLD_VIRTUAL_PYTHONHOME"
|
||||||
|
set -gx PYTHONHOME $_OLD_VIRTUAL_PYTHONHOME
|
||||||
|
set -e _OLD_VIRTUAL_PYTHONHOME
|
||||||
|
end
|
||||||
|
|
||||||
|
if test -n "$_OLD_FISH_PROMPT_OVERRIDE"
|
||||||
|
# Set an empty local `$fish_function_path` to allow the removal of `fish_prompt` using `functions -e`.
|
||||||
|
set -l fish_function_path
|
||||||
|
|
||||||
|
# Erase virtualenv's `fish_prompt` and restore the original.
|
||||||
|
functions -e fish_prompt
|
||||||
|
functions -c _old_fish_prompt fish_prompt
|
||||||
|
functions -e _old_fish_prompt
|
||||||
|
set -e _OLD_FISH_PROMPT_OVERRIDE
|
||||||
|
end
|
||||||
|
|
||||||
|
set -e VIRTUAL_ENV
|
||||||
|
|
||||||
|
if test "$argv[1]" != 'nondestructive'
|
||||||
|
# Self-destruct!
|
||||||
|
functions -e pydoc
|
||||||
|
functions -e deactivate
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
# Unset irrelevant variables.
|
||||||
|
deactivate nondestructive
|
||||||
|
|
||||||
|
set -gx VIRTUAL_ENV "/home/ben/Documents/Projects/Python/PyGeoIP/env"
|
||||||
|
|
||||||
|
set -gx _OLD_VIRTUAL_PATH $PATH
|
||||||
|
set -gx PATH "$VIRTUAL_ENV/bin" $PATH
|
||||||
|
|
||||||
|
# Unset `$PYTHONHOME` if set.
|
||||||
|
if set -q PYTHONHOME
|
||||||
|
set -gx _OLD_VIRTUAL_PYTHONHOME $PYTHONHOME
|
||||||
|
set -e PYTHONHOME
|
||||||
|
end
|
||||||
|
|
||||||
|
function pydoc
|
||||||
|
python -m pydoc $argv
|
||||||
|
end
|
||||||
|
|
||||||
|
if test -z "$VIRTUAL_ENV_DISABLE_PROMPT"
|
||||||
|
# Copy the current `fish_prompt` function as `_old_fish_prompt`.
|
||||||
|
functions -c fish_prompt _old_fish_prompt
|
||||||
|
|
||||||
|
function fish_prompt
|
||||||
|
# Save the current $status, for fish_prompts that display it.
|
||||||
|
set -l old_status $status
|
||||||
|
|
||||||
|
# Prompt override provided?
|
||||||
|
# If not, just prepend the environment name.
|
||||||
|
if test -n ""
|
||||||
|
printf '%s%s' "" (set_color normal)
|
||||||
|
else
|
||||||
|
printf '%s(%s) ' (set_color normal) (basename "$VIRTUAL_ENV")
|
||||||
|
end
|
||||||
|
|
||||||
|
# Restore the original $status
|
||||||
|
echo "exit $old_status" | source
|
||||||
|
_old_fish_prompt
|
||||||
|
end
|
||||||
|
|
||||||
|
set -gx _OLD_FISH_PROMPT_OVERRIDE "$VIRTUAL_ENV"
|
||||||
|
end
|
||||||
34
env/bin/activate_this.py
vendored
Normal file
34
env/bin/activate_this.py
vendored
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
"""By using execfile(this_file, dict(__file__=this_file)) you will
|
||||||
|
activate this virtualenv environment.
|
||||||
|
|
||||||
|
This can be used when you must use an existing Python interpreter, not
|
||||||
|
the virtualenv bin/python
|
||||||
|
"""
|
||||||
|
|
||||||
|
try:
|
||||||
|
__file__
|
||||||
|
except NameError:
|
||||||
|
raise AssertionError(
|
||||||
|
"You must run this like execfile('path/to/activate_this.py', dict(__file__='path/to/activate_this.py'))")
|
||||||
|
import sys
|
||||||
|
import os
|
||||||
|
|
||||||
|
old_os_path = os.environ.get('PATH', '')
|
||||||
|
os.environ['PATH'] = os.path.dirname(os.path.abspath(__file__)) + os.pathsep + old_os_path
|
||||||
|
base = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
|
||||||
|
if sys.platform == 'win32':
|
||||||
|
site_packages = os.path.join(base, 'Lib', 'site-packages')
|
||||||
|
else:
|
||||||
|
site_packages = os.path.join(base, 'lib', 'python%s' % sys.version[:3], 'site-packages')
|
||||||
|
prev_sys_path = list(sys.path)
|
||||||
|
import site
|
||||||
|
site.addsitedir(site_packages)
|
||||||
|
sys.real_prefix = sys.prefix
|
||||||
|
sys.prefix = base
|
||||||
|
# Move the added items to the front of the path:
|
||||||
|
new_sys_path = []
|
||||||
|
for item in list(sys.path):
|
||||||
|
if item not in prev_sys_path:
|
||||||
|
new_sys_path.append(item)
|
||||||
|
sys.path.remove(item)
|
||||||
|
sys.path[:0] = new_sys_path
|
||||||
11
env/bin/easy_install
vendored
Executable file
11
env/bin/easy_install
vendored
Executable file
@ -0,0 +1,11 @@
|
|||||||
|
#!/home/ben/Documents/Projects/Python/PyGeoIP/env/bin/python
|
||||||
|
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
import re
|
||||||
|
import sys
|
||||||
|
|
||||||
|
from setuptools.command.easy_install import main
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
|
||||||
|
sys.exit(main())
|
||||||
11
env/bin/easy_install-3.7
vendored
Executable file
11
env/bin/easy_install-3.7
vendored
Executable file
@ -0,0 +1,11 @@
|
|||||||
|
#!/home/ben/Documents/Projects/Python/PyGeoIP/env/bin/python
|
||||||
|
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
import re
|
||||||
|
import sys
|
||||||
|
|
||||||
|
from setuptools.command.easy_install import main
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
|
||||||
|
sys.exit(main())
|
||||||
1517
env/bin/ipwhois_cli.py
vendored
Normal file
1517
env/bin/ipwhois_cli.py
vendored
Normal file
File diff suppressed because it is too large
Load Diff
269
env/bin/ipwhois_utils_cli.py
vendored
Normal file
269
env/bin/ipwhois_utils_cli.py
vendored
Normal file
@ -0,0 +1,269 @@
|
|||||||
|
# Copyright (c) 2013-2017 Philip Hane
|
||||||
|
# All rights reserved.
|
||||||
|
#
|
||||||
|
# Redistribution and use in source and binary forms, with or without
|
||||||
|
# modification, are permitted provided that the following conditions are met:
|
||||||
|
#
|
||||||
|
# 1. Redistributions of source code must retain the above copyright notice,
|
||||||
|
# this list of conditions and the following disclaimer.
|
||||||
|
# 2. Redistributions in binary form must reproduce the above copyright notice,
|
||||||
|
# this list of conditions and the following disclaimer in the documentation
|
||||||
|
# and/or other materials provided with the distribution.
|
||||||
|
#
|
||||||
|
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
||||||
|
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||||
|
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||||
|
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
|
||||||
|
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||||
|
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
||||||
|
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||||
|
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
||||||
|
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||||
|
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||||
|
# POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
|
||||||
|
# CLI python script interface for ipwhois.utils lookups.
|
||||||
|
|
||||||
|
import argparse
|
||||||
|
from collections import OrderedDict
|
||||||
|
import json
|
||||||
|
from ipwhois.utils import (ipv4_lstrip_zeros, calculate_cidr, get_countries,
|
||||||
|
ipv4_is_defined, ipv6_is_defined, unique_everseen,
|
||||||
|
unique_addresses)
|
||||||
|
|
||||||
|
# CLI ANSI rendering
|
||||||
|
ANSI = {
|
||||||
|
'end': '\033[0m',
|
||||||
|
'b': '\033[1m',
|
||||||
|
'ul': '\033[4m',
|
||||||
|
'red': '\033[31m',
|
||||||
|
'green': '\033[32m',
|
||||||
|
'yellow': '\033[33m',
|
||||||
|
'cyan': '\033[36m'
|
||||||
|
}
|
||||||
|
|
||||||
|
# Setup the arg parser.
|
||||||
|
parser = argparse.ArgumentParser(
|
||||||
|
description='ipwhois utilities CLI interface'
|
||||||
|
)
|
||||||
|
parser.add_argument(
|
||||||
|
'--ipv4_lstrip_zeros',
|
||||||
|
type=str,
|
||||||
|
nargs=1,
|
||||||
|
metavar='"IP ADDRESS"',
|
||||||
|
help='Strip leading zeros in each octet of an IPv4 address.'
|
||||||
|
)
|
||||||
|
parser.add_argument(
|
||||||
|
'--calculate_cidr',
|
||||||
|
type=str,
|
||||||
|
nargs=2,
|
||||||
|
metavar='"IP ADDRESS"',
|
||||||
|
help='Calculate a CIDR range(s) from a start and end IP address.'
|
||||||
|
)
|
||||||
|
parser.add_argument(
|
||||||
|
'--get_countries',
|
||||||
|
action='store_true',
|
||||||
|
help='Output a dictionary containing ISO_3166-1 country codes to names.'
|
||||||
|
)
|
||||||
|
parser.add_argument(
|
||||||
|
'--get_country',
|
||||||
|
type=str,
|
||||||
|
nargs=1,
|
||||||
|
metavar='"COUNTRY CODE"',
|
||||||
|
help='Output the ISO_3166-1 name for a country code.'
|
||||||
|
)
|
||||||
|
parser.add_argument(
|
||||||
|
'--ipv4_is_defined',
|
||||||
|
type=str,
|
||||||
|
nargs=1,
|
||||||
|
metavar='"IP ADDRESS"',
|
||||||
|
help='Check if an IPv4 address is defined (in a reserved address range).'
|
||||||
|
)
|
||||||
|
parser.add_argument(
|
||||||
|
'--ipv6_is_defined',
|
||||||
|
type=str,
|
||||||
|
nargs=1,
|
||||||
|
metavar='"IP ADDRESS"',
|
||||||
|
help='Check if an IPv6 address is defined (in a reserved address range).'
|
||||||
|
)
|
||||||
|
parser.add_argument(
|
||||||
|
'--unique_everseen',
|
||||||
|
type=json.loads,
|
||||||
|
nargs=1,
|
||||||
|
metavar='"ITERABLE"',
|
||||||
|
help='List unique elements from input iterable, preserving the order.'
|
||||||
|
)
|
||||||
|
parser.add_argument(
|
||||||
|
'--unique_addresses',
|
||||||
|
type=str,
|
||||||
|
nargs=1,
|
||||||
|
metavar='"FILE PATH"',
|
||||||
|
help='Search an input file, extracting, counting, and summarizing '
|
||||||
|
'IPv4/IPv6 addresses/networks.'
|
||||||
|
)
|
||||||
|
|
||||||
|
# Output options
|
||||||
|
group = parser.add_argument_group('Output options')
|
||||||
|
group.add_argument(
|
||||||
|
'--colorize',
|
||||||
|
action='store_true',
|
||||||
|
help='If set, colorizes the output using ANSI. Should work in most '
|
||||||
|
'platform consoles.'
|
||||||
|
)
|
||||||
|
|
||||||
|
# Get the args
|
||||||
|
script_args = parser.parse_args()
|
||||||
|
|
||||||
|
if script_args.ipv4_lstrip_zeros:
|
||||||
|
|
||||||
|
print(ipv4_lstrip_zeros(address=script_args.ipv4_lstrip_zeros[0]))
|
||||||
|
|
||||||
|
elif script_args.calculate_cidr:
|
||||||
|
|
||||||
|
try:
|
||||||
|
|
||||||
|
result = calculate_cidr(
|
||||||
|
start_address=script_args.calculate_cidr[0],
|
||||||
|
end_address=script_args.calculate_cidr[1]
|
||||||
|
)
|
||||||
|
|
||||||
|
print('{0}Found {1} CIDR blocks for ({2}, {3}){4}:\n{5}'.format(
|
||||||
|
ANSI['green'] if script_args.colorize else '',
|
||||||
|
len(result),
|
||||||
|
script_args.calculate_cidr[0],
|
||||||
|
script_args.calculate_cidr[1],
|
||||||
|
ANSI['end'] if script_args.colorize else '',
|
||||||
|
'\n'.join(result)
|
||||||
|
))
|
||||||
|
|
||||||
|
except Exception as e:
|
||||||
|
|
||||||
|
print('{0}Error{1}: {2}'.format(ANSI['red'], ANSI['end'], str(e)))
|
||||||
|
|
||||||
|
elif script_args.get_countries:
|
||||||
|
|
||||||
|
try:
|
||||||
|
|
||||||
|
result = get_countries()
|
||||||
|
|
||||||
|
print('{0}Found {1} countries{2}:\n{3}'.format(
|
||||||
|
ANSI['green'] if script_args.colorize else '',
|
||||||
|
len(result),
|
||||||
|
ANSI['end'] if script_args.colorize else '',
|
||||||
|
'\n'.join(['{0}: {1}'.format(k, v) for k, v in (
|
||||||
|
OrderedDict(sorted(result.items())).iteritems())])
|
||||||
|
))
|
||||||
|
|
||||||
|
except Exception as e:
|
||||||
|
|
||||||
|
print('{0}Error{1}: {2}'.format(ANSI['red'], ANSI['end'], str(e)))
|
||||||
|
|
||||||
|
elif script_args.get_country:
|
||||||
|
|
||||||
|
try:
|
||||||
|
|
||||||
|
countries = get_countries()
|
||||||
|
result = countries[script_args.get_country[0].upper()]
|
||||||
|
|
||||||
|
print('{0}Match found for country code ({1}){2}:\n{3}'.format(
|
||||||
|
ANSI['green'] if script_args.colorize else '',
|
||||||
|
script_args.get_country[0],
|
||||||
|
ANSI['end'] if script_args.colorize else '',
|
||||||
|
result
|
||||||
|
))
|
||||||
|
|
||||||
|
except Exception as e:
|
||||||
|
|
||||||
|
print('{0}Error{1}: {2}'.format(ANSI['red'], ANSI['end'], str(e)))
|
||||||
|
|
||||||
|
elif script_args.ipv4_is_defined:
|
||||||
|
|
||||||
|
try:
|
||||||
|
|
||||||
|
result = ipv4_is_defined(address=script_args.ipv4_is_defined[0])
|
||||||
|
|
||||||
|
if result[0]:
|
||||||
|
print('{0}{1} is defined{2}:\n{3}'.format(
|
||||||
|
ANSI['green'] if script_args.colorize else '',
|
||||||
|
script_args.ipv4_is_defined[0],
|
||||||
|
ANSI['end'] if script_args.colorize else '',
|
||||||
|
'Name: {0}\nRFC: {1}'.format(result[1], result[2])
|
||||||
|
))
|
||||||
|
else:
|
||||||
|
print('{0}{1} is not defined{2}'.format(
|
||||||
|
ANSI['yellow'] if script_args.colorize else '',
|
||||||
|
script_args.ipv4_is_defined[0],
|
||||||
|
ANSI['end'] if script_args.colorize else ''
|
||||||
|
))
|
||||||
|
|
||||||
|
except Exception as e:
|
||||||
|
|
||||||
|
print('{0}Error{1}: {2}'.format(ANSI['red'], ANSI['end'], str(e)))
|
||||||
|
|
||||||
|
elif script_args.ipv6_is_defined:
|
||||||
|
|
||||||
|
try:
|
||||||
|
|
||||||
|
result = ipv6_is_defined(address=script_args.ipv6_is_defined[0])
|
||||||
|
|
||||||
|
if result[0]:
|
||||||
|
print('{0}{1} is defined{2}:\n{3}'.format(
|
||||||
|
ANSI['green'] if script_args.colorize else '',
|
||||||
|
script_args.ipv6_is_defined[0],
|
||||||
|
ANSI['end'] if script_args.colorize else '',
|
||||||
|
'Name: {0}\nRFC: {1}'.format(result[1], result[2])
|
||||||
|
))
|
||||||
|
else:
|
||||||
|
print('{0}{1} is not defined{2}'.format(
|
||||||
|
ANSI['yellow'] if script_args.colorize else '',
|
||||||
|
script_args.ipv6_is_defined[0],
|
||||||
|
ANSI['end'] if script_args.colorize else ''
|
||||||
|
))
|
||||||
|
|
||||||
|
except Exception as e:
|
||||||
|
|
||||||
|
print('{0}Error{1}: {2}'.format(ANSI['red'], ANSI['end'], str(e)))
|
||||||
|
|
||||||
|
elif script_args.unique_everseen:
|
||||||
|
|
||||||
|
try:
|
||||||
|
|
||||||
|
result = list(unique_everseen(iterable=script_args.unique_everseen[0]))
|
||||||
|
|
||||||
|
print('{0}Unique everseen{1}:\n{2}'.format(
|
||||||
|
ANSI['green'] if script_args.colorize else '',
|
||||||
|
ANSI['end'] if script_args.colorize else '',
|
||||||
|
result
|
||||||
|
))
|
||||||
|
|
||||||
|
except Exception as e:
|
||||||
|
|
||||||
|
print('{0}Error{1}: {2}'.format(ANSI['red'], ANSI['end'], str(e)))
|
||||||
|
|
||||||
|
elif script_args.unique_addresses:
|
||||||
|
|
||||||
|
try:
|
||||||
|
|
||||||
|
result = unique_addresses(file_path=script_args.unique_addresses[0])
|
||||||
|
|
||||||
|
tmp = []
|
||||||
|
for k, v in sorted(result.items(), key=lambda kv: int(kv[1]['count']),
|
||||||
|
reverse=True):
|
||||||
|
tmp.append('{0}{1}{2}: Count: {3}, Ports: {4}'.format(
|
||||||
|
ANSI['b'] if script_args.colorize else '',
|
||||||
|
k,
|
||||||
|
ANSI['end'] if script_args.colorize else '',
|
||||||
|
v['count'],
|
||||||
|
json.dumps(v['ports'])
|
||||||
|
))
|
||||||
|
|
||||||
|
print('{0}Found {1} unique addresses{2}:\n{3}'.format(
|
||||||
|
ANSI['green'] if script_args.colorize else '',
|
||||||
|
len(result),
|
||||||
|
ANSI['end'] if script_args.colorize else '',
|
||||||
|
'\n'.join(tmp)
|
||||||
|
))
|
||||||
|
|
||||||
|
except Exception as e:
|
||||||
|
|
||||||
|
print('{0}Error{1}: {2}'.format(ANSI['red'], ANSI['end'], str(e)))
|
||||||
11
env/bin/pip
vendored
Executable file
11
env/bin/pip
vendored
Executable file
@ -0,0 +1,11 @@
|
|||||||
|
#!/home/ben/Documents/Projects/Python/PyGeoIP/env/bin/python
|
||||||
|
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
import re
|
||||||
|
import sys
|
||||||
|
|
||||||
|
from pip._internal import main
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
|
||||||
|
sys.exit(main())
|
||||||
11
env/bin/pip3
vendored
Executable file
11
env/bin/pip3
vendored
Executable file
@ -0,0 +1,11 @@
|
|||||||
|
#!/home/ben/Documents/Projects/Python/PyGeoIP/env/bin/python
|
||||||
|
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
import re
|
||||||
|
import sys
|
||||||
|
|
||||||
|
from pip._internal import main
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
|
||||||
|
sys.exit(main())
|
||||||
11
env/bin/pip3.7
vendored
Executable file
11
env/bin/pip3.7
vendored
Executable file
@ -0,0 +1,11 @@
|
|||||||
|
#!/home/ben/Documents/Projects/Python/PyGeoIP/env/bin/python
|
||||||
|
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
import re
|
||||||
|
import sys
|
||||||
|
|
||||||
|
from pip._internal import main
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
|
||||||
|
sys.exit(main())
|
||||||
BIN
env/bin/python
vendored
Executable file
BIN
env/bin/python
vendored
Executable file
Binary file not shown.
78
env/bin/python-config
vendored
Executable file
78
env/bin/python-config
vendored
Executable file
@ -0,0 +1,78 @@
|
|||||||
|
#!/home/ben/Documents/Projects/Python/PyGeoIP/env/bin/python
|
||||||
|
|
||||||
|
import sys
|
||||||
|
import getopt
|
||||||
|
import sysconfig
|
||||||
|
|
||||||
|
valid_opts = ['prefix', 'exec-prefix', 'includes', 'libs', 'cflags',
|
||||||
|
'ldflags', 'help']
|
||||||
|
|
||||||
|
if sys.version_info >= (3, 2):
|
||||||
|
valid_opts.insert(-1, 'extension-suffix')
|
||||||
|
valid_opts.append('abiflags')
|
||||||
|
if sys.version_info >= (3, 3):
|
||||||
|
valid_opts.append('configdir')
|
||||||
|
|
||||||
|
|
||||||
|
def exit_with_usage(code=1):
|
||||||
|
sys.stderr.write("Usage: {0} [{1}]\n".format(
|
||||||
|
sys.argv[0], '|'.join('--'+opt for opt in valid_opts)))
|
||||||
|
sys.exit(code)
|
||||||
|
|
||||||
|
try:
|
||||||
|
opts, args = getopt.getopt(sys.argv[1:], '', valid_opts)
|
||||||
|
except getopt.error:
|
||||||
|
exit_with_usage()
|
||||||
|
|
||||||
|
if not opts:
|
||||||
|
exit_with_usage()
|
||||||
|
|
||||||
|
pyver = sysconfig.get_config_var('VERSION')
|
||||||
|
getvar = sysconfig.get_config_var
|
||||||
|
|
||||||
|
opt_flags = [flag for (flag, val) in opts]
|
||||||
|
|
||||||
|
if '--help' in opt_flags:
|
||||||
|
exit_with_usage(code=0)
|
||||||
|
|
||||||
|
for opt in opt_flags:
|
||||||
|
if opt == '--prefix':
|
||||||
|
print(sysconfig.get_config_var('prefix'))
|
||||||
|
|
||||||
|
elif opt == '--exec-prefix':
|
||||||
|
print(sysconfig.get_config_var('exec_prefix'))
|
||||||
|
|
||||||
|
elif opt in ('--includes', '--cflags'):
|
||||||
|
flags = ['-I' + sysconfig.get_path('include'),
|
||||||
|
'-I' + sysconfig.get_path('platinclude')]
|
||||||
|
if opt == '--cflags':
|
||||||
|
flags.extend(getvar('CFLAGS').split())
|
||||||
|
print(' '.join(flags))
|
||||||
|
|
||||||
|
elif opt in ('--libs', '--ldflags'):
|
||||||
|
abiflags = getattr(sys, 'abiflags', '')
|
||||||
|
libs = ['-lpython' + pyver + abiflags]
|
||||||
|
libs += getvar('LIBS').split()
|
||||||
|
libs += getvar('SYSLIBS').split()
|
||||||
|
# add the prefix/lib/pythonX.Y/config dir, but only if there is no
|
||||||
|
# shared library in prefix/lib/.
|
||||||
|
if opt == '--ldflags':
|
||||||
|
if not getvar('Py_ENABLE_SHARED'):
|
||||||
|
libs.insert(0, '-L' + getvar('LIBPL'))
|
||||||
|
if not getvar('PYTHONFRAMEWORK'):
|
||||||
|
libs.extend(getvar('LINKFORSHARED').split())
|
||||||
|
print(' '.join(libs))
|
||||||
|
|
||||||
|
elif opt == '--extension-suffix':
|
||||||
|
ext_suffix = sysconfig.get_config_var('EXT_SUFFIX')
|
||||||
|
if ext_suffix is None:
|
||||||
|
ext_suffix = sysconfig.get_config_var('SO')
|
||||||
|
print(ext_suffix)
|
||||||
|
|
||||||
|
elif opt == '--abiflags':
|
||||||
|
if not getattr(sys, 'abiflags', None):
|
||||||
|
exit_with_usage()
|
||||||
|
print(sys.abiflags)
|
||||||
|
|
||||||
|
elif opt == '--configdir':
|
||||||
|
print(sysconfig.get_config_var('LIBPL'))
|
||||||
1
env/bin/python3
vendored
Symbolic link
1
env/bin/python3
vendored
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
python
|
||||||
1
env/bin/python3.7
vendored
Symbolic link
1
env/bin/python3.7
vendored
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
python
|
||||||
11
env/bin/wheel
vendored
Executable file
11
env/bin/wheel
vendored
Executable file
@ -0,0 +1,11 @@
|
|||||||
|
#!/home/ben/Documents/Projects/Python/PyGeoIP/env/bin/python
|
||||||
|
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
import re
|
||||||
|
import sys
|
||||||
|
|
||||||
|
from wheel.cli import main
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
|
||||||
|
sys.exit(main())
|
||||||
1
env/include/python3.7m
vendored
Symbolic link
1
env/include/python3.7m
vendored
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
/usr/include/python3.7m
|
||||||
1
env/lib/python3.7/__future__.py
vendored
Symbolic link
1
env/lib/python3.7/__future__.py
vendored
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
/usr/lib/python3.7/__future__.py
|
||||||
BIN
env/lib/python3.7/__pycache__/__future__.cpython-37.pyc
vendored
Normal file
BIN
env/lib/python3.7/__pycache__/__future__.cpython-37.pyc
vendored
Normal file
Binary file not shown.
BIN
env/lib/python3.7/__pycache__/_bootlocale.cpython-37.pyc
vendored
Normal file
BIN
env/lib/python3.7/__pycache__/_bootlocale.cpython-37.pyc
vendored
Normal file
Binary file not shown.
BIN
env/lib/python3.7/__pycache__/_collections_abc.cpython-37.pyc
vendored
Normal file
BIN
env/lib/python3.7/__pycache__/_collections_abc.cpython-37.pyc
vendored
Normal file
Binary file not shown.
BIN
env/lib/python3.7/__pycache__/_weakrefset.cpython-37.pyc
vendored
Normal file
BIN
env/lib/python3.7/__pycache__/_weakrefset.cpython-37.pyc
vendored
Normal file
Binary file not shown.
BIN
env/lib/python3.7/__pycache__/abc.cpython-37.pyc
vendored
Normal file
BIN
env/lib/python3.7/__pycache__/abc.cpython-37.pyc
vendored
Normal file
Binary file not shown.
BIN
env/lib/python3.7/__pycache__/base64.cpython-37.pyc
vendored
Normal file
BIN
env/lib/python3.7/__pycache__/base64.cpython-37.pyc
vendored
Normal file
Binary file not shown.
BIN
env/lib/python3.7/__pycache__/bisect.cpython-37.pyc
vendored
Normal file
BIN
env/lib/python3.7/__pycache__/bisect.cpython-37.pyc
vendored
Normal file
Binary file not shown.
BIN
env/lib/python3.7/__pycache__/codecs.cpython-37.pyc
vendored
Normal file
BIN
env/lib/python3.7/__pycache__/codecs.cpython-37.pyc
vendored
Normal file
Binary file not shown.
BIN
env/lib/python3.7/__pycache__/copy.cpython-37.pyc
vendored
Normal file
BIN
env/lib/python3.7/__pycache__/copy.cpython-37.pyc
vendored
Normal file
Binary file not shown.
BIN
env/lib/python3.7/__pycache__/copyreg.cpython-37.pyc
vendored
Normal file
BIN
env/lib/python3.7/__pycache__/copyreg.cpython-37.pyc
vendored
Normal file
Binary file not shown.
BIN
env/lib/python3.7/__pycache__/enum.cpython-37.pyc
vendored
Normal file
BIN
env/lib/python3.7/__pycache__/enum.cpython-37.pyc
vendored
Normal file
Binary file not shown.
BIN
env/lib/python3.7/__pycache__/fnmatch.cpython-37.pyc
vendored
Normal file
BIN
env/lib/python3.7/__pycache__/fnmatch.cpython-37.pyc
vendored
Normal file
Binary file not shown.
BIN
env/lib/python3.7/__pycache__/functools.cpython-37.pyc
vendored
Normal file
BIN
env/lib/python3.7/__pycache__/functools.cpython-37.pyc
vendored
Normal file
Binary file not shown.
BIN
env/lib/python3.7/__pycache__/genericpath.cpython-37.pyc
vendored
Normal file
BIN
env/lib/python3.7/__pycache__/genericpath.cpython-37.pyc
vendored
Normal file
Binary file not shown.
BIN
env/lib/python3.7/__pycache__/hashlib.cpython-37.pyc
vendored
Normal file
BIN
env/lib/python3.7/__pycache__/hashlib.cpython-37.pyc
vendored
Normal file
Binary file not shown.
BIN
env/lib/python3.7/__pycache__/heapq.cpython-37.pyc
vendored
Normal file
BIN
env/lib/python3.7/__pycache__/heapq.cpython-37.pyc
vendored
Normal file
Binary file not shown.
BIN
env/lib/python3.7/__pycache__/hmac.cpython-37.pyc
vendored
Normal file
BIN
env/lib/python3.7/__pycache__/hmac.cpython-37.pyc
vendored
Normal file
Binary file not shown.
BIN
env/lib/python3.7/__pycache__/imp.cpython-37.pyc
vendored
Normal file
BIN
env/lib/python3.7/__pycache__/imp.cpython-37.pyc
vendored
Normal file
Binary file not shown.
BIN
env/lib/python3.7/__pycache__/io.cpython-37.pyc
vendored
Normal file
BIN
env/lib/python3.7/__pycache__/io.cpython-37.pyc
vendored
Normal file
Binary file not shown.
BIN
env/lib/python3.7/__pycache__/keyword.cpython-37.pyc
vendored
Normal file
BIN
env/lib/python3.7/__pycache__/keyword.cpython-37.pyc
vendored
Normal file
Binary file not shown.
BIN
env/lib/python3.7/__pycache__/linecache.cpython-37.pyc
vendored
Normal file
BIN
env/lib/python3.7/__pycache__/linecache.cpython-37.pyc
vendored
Normal file
Binary file not shown.
BIN
env/lib/python3.7/__pycache__/locale.cpython-37.pyc
vendored
Normal file
BIN
env/lib/python3.7/__pycache__/locale.cpython-37.pyc
vendored
Normal file
Binary file not shown.
BIN
env/lib/python3.7/__pycache__/operator.cpython-37.pyc
vendored
Normal file
BIN
env/lib/python3.7/__pycache__/operator.cpython-37.pyc
vendored
Normal file
Binary file not shown.
BIN
env/lib/python3.7/__pycache__/os.cpython-37.pyc
vendored
Normal file
BIN
env/lib/python3.7/__pycache__/os.cpython-37.pyc
vendored
Normal file
Binary file not shown.
BIN
env/lib/python3.7/__pycache__/posixpath.cpython-37.pyc
vendored
Normal file
BIN
env/lib/python3.7/__pycache__/posixpath.cpython-37.pyc
vendored
Normal file
Binary file not shown.
BIN
env/lib/python3.7/__pycache__/random.cpython-37.pyc
vendored
Normal file
BIN
env/lib/python3.7/__pycache__/random.cpython-37.pyc
vendored
Normal file
Binary file not shown.
BIN
env/lib/python3.7/__pycache__/re.cpython-37.pyc
vendored
Normal file
BIN
env/lib/python3.7/__pycache__/re.cpython-37.pyc
vendored
Normal file
Binary file not shown.
BIN
env/lib/python3.7/__pycache__/reprlib.cpython-37.pyc
vendored
Normal file
BIN
env/lib/python3.7/__pycache__/reprlib.cpython-37.pyc
vendored
Normal file
Binary file not shown.
BIN
env/lib/python3.7/__pycache__/shutil.cpython-37.pyc
vendored
Normal file
BIN
env/lib/python3.7/__pycache__/shutil.cpython-37.pyc
vendored
Normal file
Binary file not shown.
BIN
env/lib/python3.7/__pycache__/site.cpython-37.pyc
vendored
Normal file
BIN
env/lib/python3.7/__pycache__/site.cpython-37.pyc
vendored
Normal file
Binary file not shown.
BIN
env/lib/python3.7/__pycache__/sre_compile.cpython-37.pyc
vendored
Normal file
BIN
env/lib/python3.7/__pycache__/sre_compile.cpython-37.pyc
vendored
Normal file
Binary file not shown.
BIN
env/lib/python3.7/__pycache__/sre_constants.cpython-37.pyc
vendored
Normal file
BIN
env/lib/python3.7/__pycache__/sre_constants.cpython-37.pyc
vendored
Normal file
Binary file not shown.
BIN
env/lib/python3.7/__pycache__/sre_parse.cpython-37.pyc
vendored
Normal file
BIN
env/lib/python3.7/__pycache__/sre_parse.cpython-37.pyc
vendored
Normal file
Binary file not shown.
BIN
env/lib/python3.7/__pycache__/stat.cpython-37.pyc
vendored
Normal file
BIN
env/lib/python3.7/__pycache__/stat.cpython-37.pyc
vendored
Normal file
Binary file not shown.
BIN
env/lib/python3.7/__pycache__/struct.cpython-37.pyc
vendored
Normal file
BIN
env/lib/python3.7/__pycache__/struct.cpython-37.pyc
vendored
Normal file
Binary file not shown.
BIN
env/lib/python3.7/__pycache__/tarfile.cpython-37.pyc
vendored
Normal file
BIN
env/lib/python3.7/__pycache__/tarfile.cpython-37.pyc
vendored
Normal file
Binary file not shown.
BIN
env/lib/python3.7/__pycache__/tempfile.cpython-37.pyc
vendored
Normal file
BIN
env/lib/python3.7/__pycache__/tempfile.cpython-37.pyc
vendored
Normal file
Binary file not shown.
BIN
env/lib/python3.7/__pycache__/token.cpython-37.pyc
vendored
Normal file
BIN
env/lib/python3.7/__pycache__/token.cpython-37.pyc
vendored
Normal file
Binary file not shown.
BIN
env/lib/python3.7/__pycache__/tokenize.cpython-37.pyc
vendored
Normal file
BIN
env/lib/python3.7/__pycache__/tokenize.cpython-37.pyc
vendored
Normal file
Binary file not shown.
BIN
env/lib/python3.7/__pycache__/types.cpython-37.pyc
vendored
Normal file
BIN
env/lib/python3.7/__pycache__/types.cpython-37.pyc
vendored
Normal file
Binary file not shown.
BIN
env/lib/python3.7/__pycache__/warnings.cpython-37.pyc
vendored
Normal file
BIN
env/lib/python3.7/__pycache__/warnings.cpython-37.pyc
vendored
Normal file
Binary file not shown.
BIN
env/lib/python3.7/__pycache__/weakref.cpython-37.pyc
vendored
Normal file
BIN
env/lib/python3.7/__pycache__/weakref.cpython-37.pyc
vendored
Normal file
Binary file not shown.
1
env/lib/python3.7/_bootlocale.py
vendored
Symbolic link
1
env/lib/python3.7/_bootlocale.py
vendored
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
/usr/lib/python3.7/_bootlocale.py
|
||||||
1
env/lib/python3.7/_collections_abc.py
vendored
Symbolic link
1
env/lib/python3.7/_collections_abc.py
vendored
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
/usr/lib/python3.7/_collections_abc.py
|
||||||
1
env/lib/python3.7/_dummy_thread.py
vendored
Symbolic link
1
env/lib/python3.7/_dummy_thread.py
vendored
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
/usr/lib/python3.7/_dummy_thread.py
|
||||||
1
env/lib/python3.7/_weakrefset.py
vendored
Symbolic link
1
env/lib/python3.7/_weakrefset.py
vendored
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
/usr/lib/python3.7/_weakrefset.py
|
||||||
1
env/lib/python3.7/abc.py
vendored
Symbolic link
1
env/lib/python3.7/abc.py
vendored
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
/usr/lib/python3.7/abc.py
|
||||||
1
env/lib/python3.7/base64.py
vendored
Symbolic link
1
env/lib/python3.7/base64.py
vendored
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
/usr/lib/python3.7/base64.py
|
||||||
1
env/lib/python3.7/bisect.py
vendored
Symbolic link
1
env/lib/python3.7/bisect.py
vendored
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
/usr/lib/python3.7/bisect.py
|
||||||
1
env/lib/python3.7/codecs.py
vendored
Symbolic link
1
env/lib/python3.7/codecs.py
vendored
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
/usr/lib/python3.7/codecs.py
|
||||||
1
env/lib/python3.7/collections
vendored
Symbolic link
1
env/lib/python3.7/collections
vendored
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
/usr/lib/python3.7/collections
|
||||||
1
env/lib/python3.7/config-3.7m-x86_64-linux-gnu
vendored
Symbolic link
1
env/lib/python3.7/config-3.7m-x86_64-linux-gnu
vendored
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
/usr/lib/python3.7/config-3.7m-x86_64-linux-gnu
|
||||||
1
env/lib/python3.7/copy.py
vendored
Symbolic link
1
env/lib/python3.7/copy.py
vendored
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
/usr/lib/python3.7/copy.py
|
||||||
1
env/lib/python3.7/copyreg.py
vendored
Symbolic link
1
env/lib/python3.7/copyreg.py
vendored
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
/usr/lib/python3.7/copyreg.py
|
||||||
101
env/lib/python3.7/distutils/__init__.py
vendored
Normal file
101
env/lib/python3.7/distutils/__init__.py
vendored
Normal file
@ -0,0 +1,101 @@
|
|||||||
|
import os
|
||||||
|
import sys
|
||||||
|
import warnings
|
||||||
|
import imp
|
||||||
|
import opcode # opcode is not a virtualenv module, so we can use it to find the stdlib
|
||||||
|
# Important! To work on pypy, this must be a module that resides in the
|
||||||
|
# lib-python/modified-x.y.z directory
|
||||||
|
|
||||||
|
dirname = os.path.dirname
|
||||||
|
|
||||||
|
distutils_path = os.path.join(os.path.dirname(opcode.__file__), 'distutils')
|
||||||
|
if os.path.normpath(distutils_path) == os.path.dirname(os.path.normpath(__file__)):
|
||||||
|
warnings.warn(
|
||||||
|
"The virtualenv distutils package at %s appears to be in the same location as the system distutils?")
|
||||||
|
else:
|
||||||
|
__path__.insert(0, distutils_path)
|
||||||
|
real_distutils = imp.load_module("_virtualenv_distutils", None, distutils_path, ('', '', imp.PKG_DIRECTORY))
|
||||||
|
# Copy the relevant attributes
|
||||||
|
try:
|
||||||
|
__revision__ = real_distutils.__revision__
|
||||||
|
except AttributeError:
|
||||||
|
pass
|
||||||
|
__version__ = real_distutils.__version__
|
||||||
|
|
||||||
|
from distutils import dist, sysconfig
|
||||||
|
|
||||||
|
try:
|
||||||
|
basestring
|
||||||
|
except NameError:
|
||||||
|
basestring = str
|
||||||
|
|
||||||
|
## patch build_ext (distutils doesn't know how to get the libs directory
|
||||||
|
## path on windows - it hardcodes the paths around the patched sys.prefix)
|
||||||
|
|
||||||
|
if sys.platform == 'win32':
|
||||||
|
from distutils.command.build_ext import build_ext as old_build_ext
|
||||||
|
class build_ext(old_build_ext):
|
||||||
|
def finalize_options (self):
|
||||||
|
if self.library_dirs is None:
|
||||||
|
self.library_dirs = []
|
||||||
|
elif isinstance(self.library_dirs, basestring):
|
||||||
|
self.library_dirs = self.library_dirs.split(os.pathsep)
|
||||||
|
|
||||||
|
self.library_dirs.insert(0, os.path.join(sys.real_prefix, "Libs"))
|
||||||
|
old_build_ext.finalize_options(self)
|
||||||
|
|
||||||
|
from distutils.command import build_ext as build_ext_module
|
||||||
|
build_ext_module.build_ext = build_ext
|
||||||
|
|
||||||
|
## distutils.dist patches:
|
||||||
|
|
||||||
|
old_find_config_files = dist.Distribution.find_config_files
|
||||||
|
def find_config_files(self):
|
||||||
|
found = old_find_config_files(self)
|
||||||
|
system_distutils = os.path.join(distutils_path, 'distutils.cfg')
|
||||||
|
#if os.path.exists(system_distutils):
|
||||||
|
# found.insert(0, system_distutils)
|
||||||
|
# What to call the per-user config file
|
||||||
|
if os.name == 'posix':
|
||||||
|
user_filename = ".pydistutils.cfg"
|
||||||
|
else:
|
||||||
|
user_filename = "pydistutils.cfg"
|
||||||
|
user_filename = os.path.join(sys.prefix, user_filename)
|
||||||
|
if os.path.isfile(user_filename):
|
||||||
|
for item in list(found):
|
||||||
|
if item.endswith('pydistutils.cfg'):
|
||||||
|
found.remove(item)
|
||||||
|
found.append(user_filename)
|
||||||
|
return found
|
||||||
|
dist.Distribution.find_config_files = find_config_files
|
||||||
|
|
||||||
|
## distutils.sysconfig patches:
|
||||||
|
|
||||||
|
old_get_python_inc = sysconfig.get_python_inc
|
||||||
|
def sysconfig_get_python_inc(plat_specific=0, prefix=None):
|
||||||
|
if prefix is None:
|
||||||
|
prefix = sys.real_prefix
|
||||||
|
return old_get_python_inc(plat_specific, prefix)
|
||||||
|
sysconfig_get_python_inc.__doc__ = old_get_python_inc.__doc__
|
||||||
|
sysconfig.get_python_inc = sysconfig_get_python_inc
|
||||||
|
|
||||||
|
old_get_python_lib = sysconfig.get_python_lib
|
||||||
|
def sysconfig_get_python_lib(plat_specific=0, standard_lib=0, prefix=None):
|
||||||
|
if standard_lib and prefix is None:
|
||||||
|
prefix = sys.real_prefix
|
||||||
|
return old_get_python_lib(plat_specific, standard_lib, prefix)
|
||||||
|
sysconfig_get_python_lib.__doc__ = old_get_python_lib.__doc__
|
||||||
|
sysconfig.get_python_lib = sysconfig_get_python_lib
|
||||||
|
|
||||||
|
old_get_config_vars = sysconfig.get_config_vars
|
||||||
|
def sysconfig_get_config_vars(*args):
|
||||||
|
real_vars = old_get_config_vars(*args)
|
||||||
|
if sys.platform == 'win32':
|
||||||
|
lib_dir = os.path.join(sys.real_prefix, "libs")
|
||||||
|
if isinstance(real_vars, dict) and 'LIBDIR' not in real_vars:
|
||||||
|
real_vars['LIBDIR'] = lib_dir # asked for all
|
||||||
|
elif isinstance(real_vars, list) and 'LIBDIR' in args:
|
||||||
|
real_vars = real_vars + [lib_dir] # asked for list
|
||||||
|
return real_vars
|
||||||
|
sysconfig_get_config_vars.__doc__ = old_get_config_vars.__doc__
|
||||||
|
sysconfig.get_config_vars = sysconfig_get_config_vars
|
||||||
BIN
env/lib/python3.7/distutils/__pycache__/__init__.cpython-37.pyc
vendored
Normal file
BIN
env/lib/python3.7/distutils/__pycache__/__init__.cpython-37.pyc
vendored
Normal file
Binary file not shown.
6
env/lib/python3.7/distutils/distutils.cfg
vendored
Normal file
6
env/lib/python3.7/distutils/distutils.cfg
vendored
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
# This is a config file local to this virtualenv installation
|
||||||
|
# You may include options that will be used by all distutils commands,
|
||||||
|
# and by easy_install. For instance:
|
||||||
|
#
|
||||||
|
# [easy_install]
|
||||||
|
# find_links = http://mylocalsite
|
||||||
1
env/lib/python3.7/encodings
vendored
Symbolic link
1
env/lib/python3.7/encodings
vendored
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
/usr/lib/python3.7/encodings
|
||||||
1
env/lib/python3.7/enum.py
vendored
Symbolic link
1
env/lib/python3.7/enum.py
vendored
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
/usr/lib/python3.7/enum.py
|
||||||
1
env/lib/python3.7/fnmatch.py
vendored
Symbolic link
1
env/lib/python3.7/fnmatch.py
vendored
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
/usr/lib/python3.7/fnmatch.py
|
||||||
1
env/lib/python3.7/functools.py
vendored
Symbolic link
1
env/lib/python3.7/functools.py
vendored
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
/usr/lib/python3.7/functools.py
|
||||||
1
env/lib/python3.7/genericpath.py
vendored
Symbolic link
1
env/lib/python3.7/genericpath.py
vendored
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
/usr/lib/python3.7/genericpath.py
|
||||||
1
env/lib/python3.7/hashlib.py
vendored
Symbolic link
1
env/lib/python3.7/hashlib.py
vendored
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
/usr/lib/python3.7/hashlib.py
|
||||||
1
env/lib/python3.7/heapq.py
vendored
Symbolic link
1
env/lib/python3.7/heapq.py
vendored
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
/usr/lib/python3.7/heapq.py
|
||||||
1
env/lib/python3.7/hmac.py
vendored
Symbolic link
1
env/lib/python3.7/hmac.py
vendored
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
/usr/lib/python3.7/hmac.py
|
||||||
1
env/lib/python3.7/imp.py
vendored
Symbolic link
1
env/lib/python3.7/imp.py
vendored
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
/usr/lib/python3.7/imp.py
|
||||||
1
env/lib/python3.7/importlib
vendored
Symbolic link
1
env/lib/python3.7/importlib
vendored
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
/usr/lib/python3.7/importlib
|
||||||
1
env/lib/python3.7/io.py
vendored
Symbolic link
1
env/lib/python3.7/io.py
vendored
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
/usr/lib/python3.7/io.py
|
||||||
1
env/lib/python3.7/keyword.py
vendored
Symbolic link
1
env/lib/python3.7/keyword.py
vendored
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
/usr/lib/python3.7/keyword.py
|
||||||
1
env/lib/python3.7/lib-dynload
vendored
Symbolic link
1
env/lib/python3.7/lib-dynload
vendored
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
/usr/lib/python3.7/lib-dynload
|
||||||
1
env/lib/python3.7/linecache.py
vendored
Symbolic link
1
env/lib/python3.7/linecache.py
vendored
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
/usr/lib/python3.7/linecache.py
|
||||||
1
env/lib/python3.7/locale.py
vendored
Symbolic link
1
env/lib/python3.7/locale.py
vendored
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
/usr/lib/python3.7/locale.py
|
||||||
0
env/lib/python3.7/no-global-site-packages.txt
vendored
Normal file
0
env/lib/python3.7/no-global-site-packages.txt
vendored
Normal file
1
env/lib/python3.7/ntpath.py
vendored
Symbolic link
1
env/lib/python3.7/ntpath.py
vendored
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
/usr/lib/python3.7/ntpath.py
|
||||||
1
env/lib/python3.7/operator.py
vendored
Symbolic link
1
env/lib/python3.7/operator.py
vendored
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
/usr/lib/python3.7/operator.py
|
||||||
1
env/lib/python3.7/orig-prefix.txt
vendored
Normal file
1
env/lib/python3.7/orig-prefix.txt
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
/usr
|
||||||
1
env/lib/python3.7/os.py
vendored
Symbolic link
1
env/lib/python3.7/os.py
vendored
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
/usr/lib/python3.7/os.py
|
||||||
1
env/lib/python3.7/posixpath.py
vendored
Symbolic link
1
env/lib/python3.7/posixpath.py
vendored
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
/usr/lib/python3.7/posixpath.py
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user