Python:将URL作为参数
我已经做了这个脚本,目前的工作,因为我希望它。URL(在脚本底部可见)显然是硬编码到脚本中的。我希望脚本提示用户输入URL,或者让脚本运行时带有要获取的URL参数。我是python新手,不知道,如果有任何帮助,我将不胜感激Python:将URL作为参数,python,regex,arguments,Python,Regex,Arguments,我已经做了这个脚本,目前的工作,因为我希望它。URL(在脚本底部可见)显然是硬编码到脚本中的。我希望脚本提示用户输入URL,或者让脚本运行时带有要获取的URL参数。我是python新手,不知道,如果有任何帮助,我将不胜感激 import sys, re import webpage_get def print_links(page): ''' find all hyperlinks on a webpage passed in as input and print ''' prin
import sys, re
import webpage_get
def print_links(page):
''' find all hyperlinks on a webpage passed in as input and
print '''
print '[*] print_links()'
# regex to match on hyperlinks, returning 3 grps, links[1] being the link itself
links = re.findall(r'\http\://\www.+', page)
# sort and print the links
links.sort()
print '[+]', str(len(links)), 'HyperLinks Found:'
for link in links:
print link
def get_email(str):
print '[*] get_email()'
emails = re.findall(r'\w+\@\w+.com', str)
email.sort()
print '[+]', str(len(emails)), 'Emails Found:'
for mail in emails:
print mail
def get_numbers(page):
print '[*] get_numbers()'
numbers = re.findall ('[44\d\s]{11}', page)
numbers.sort()
print '[+]', str(len(numbers)), 'Numbers Found'
for no in numbers:
print no
def main():
# temp testing url argument
sys.argv.append('http://URLGOESHERE.com')
# Check args
if len(sys.argv) != 2:
print '[-] Usage: webpage_getlinks URL'
return
# Get the web page
page = webpage_get.wget(sys.argv[1])
# Get the links
print_links(page)
get_numbers(page)
#get_email(str)
if __name__ == '__main__':
main()
我希望脚本提示用户输入URL,或者让脚本运行时带有要获取的URL参数
首先,请执行以下操作:
url = raw_input('URL: ')
url = sys.argv[1]
if len(sys.argv) < 2:
url = raw_input('URL: ')
else:
url = sys.argv[1]
对于第二种情况,请执行以下操作:
url = raw_input('URL: ')
url = sys.argv[1]
if len(sys.argv) < 2:
url = raw_input('URL: ')
else:
url = sys.argv[1]
因此,如果您想使用arg,如果它在那里,请询问,否则,请执行以下操作:
url = raw_input('URL: ')
url = sys.argv[1]
if len(sys.argv) < 2:
url = raw_input('URL: ')
else:
url = sys.argv[1]
如果len(sys.argv)<2:
url=原始输入(“url:”)
其他:
url=sys.argv[1]
如果你想获得一个单一的可选参数,请考虑使用.< /P> < P>
及 及 您可以使用ArgumentParser定义命令行参数,检查并在URL不存在时提示用户,并通过urlparse验证用户输入,这不是重复的吗?