我是一個蟒蛇新手我想要做的是創建兩個腳本。下載網頁信息和下載鏈接的其他腳本,並輸出下載到列表中的鏈接總數的摘要。從網頁使用Python下載
第一個腳本(下載網頁)
import sys, urllib
def getWebpage(url):
print '[*] getWebpage()'
url_file = urllib.urlopen(url)
page = url_file.read()
return page
def main():
sys.argv.append('http://www.funeralformyfat.tumblr.com)
if len(sys.argv) != 2:
print '[-] Usage: webpage_get URL'
return
else:
print getWebpage(sys.argv[1])
if __name__ == '__main__':
main()
第二個腳本(下載鏈接和輸出的下載到列表的鏈接總數的摘要。)
import sys, urllib
def print_links(page):
print '[*] print_links()'
links = re.findall(r'\<a.*href\=.*http\:.+', page)
links.sort()
print '[+]', str(len(links)), 'HyperLinks Found:'
for link in links:
print link
def main():
sys.argv.append('http://www.funeralformyfat.tumblr.com')
if len(sys.argv) != 2:
print '[-] Usage: webpage_links URL'
return
page = webpage_get.getWebpage(sys.argv[1])
print_links(page)
if __name__ == '__main__':
main()
我代碼運行,但它不返回任何鏈接。任何人都可以看到這個問題?
歡迎來到SO!你能否因爲同樣的原因而製作一個更小的程序?找一個最簡單的例子,讓自己和其他人回答這個問題會容易得多。 –
您的縮進不時會出錯......我假設您希望在第一個腳本中的main函數的print *內部*和print_links中的for循環*內部*。此外,對於這樣一個任務,你應該考慮不使用正則表達式http://stackoverflow.com/questions/1732348 :-) –
@cirosantilli這裏的例子沒有太多的代碼和罰款。有時需要發佈完整代碼才能識別錯誤。 PS - 沒有太多的縮短可以完成這一個。 –