# from urllib.request import urlopen
# from bs4 import beautifulsoup
# import re
# import datetime
# import random
# def randomurl(articleurl):
# url = ""+articleurl
# html = urlopen(url)
# bsobj = beautifulsoup(html)
# links = bsobj.find('div',).findall('a',href = re.compile('^(/wiki/)((?!:).)*$'))
# return links
# pass
# random.seed(datetime.datetime.now())
# newlinks = randomurl('/wiki/kevin_bacon')
# while len(newlinks)>0:
# link = newlinks[random.randint(0,len(newlinks)-1)].attrs['href']
# print(link)
# newlinks = randomurl(link)
# pass
練習1 網路資料採集示例(逐個採集維基百科的每乙個鏈結)
# from urllib.request import urlopen
# from bs4 import beautifulsoup
# import re
# datas = set()
# def getlinks(linkurl):
# global datas
# url = ''+linkurl
# html = urlopen(url)
# bsobj = beautifulsoup(html)
# for link in bsobj.findall('a',href=re.compile("^(/wiki/)")):
# if 'href' in link.attrs:
# if link.attrs['href'] not in datas:
# newlink = link.attrs['href']
# print(newlink)
# datas.add(newlink)
# getlinks(newlink)
# else:
# print('這個頁面重複啦!')
# pass
# getlinks('')
練習2 收集整個**資料
# from urllib.request import urlopen
# from bs4 import beautifulsoup
# import re
# datas = set()
# def getlinks(pageurl):
# global datas
# url = ''+pageurl
# html = urlopen(url)
# bsobj = beautifulsoup(html)
# try:
# print(bsobj.h1.get_text())
# print(bsobj.find(id='mw-content-text').findall('p')[0])
# print(bsobj.find(id="ca-edit").find('span').find('a').attrs['href'])
# pass
# except attributeerror as e:
# print('這頁面裡沒有我們要的某些資訊')
# for link in bsobj.findall('a',href=re.compile("^(/wiki/)")):
# if 'href'in link.attrs:
# if link.attrs['href'] not in datas:
# newlink = link.attrs['href']
# print(newlink)
# print('---------------------')
# datas.add(newlink)
# getlinks(newlink)
# pass
# else:
# print('我們來過這兒嘍')
# getlinks('')
今天的練習就這兩個,雖然數量少但是不看書自己敲出來比前面的練習挑戰性高的多,完整做完感覺自己還有很多不足,加油! python第十五天
什麼是模組?一系列功能的集合 定義模組?建立乙個py檔案就是乙個模組,該py檔名就是模組名 怎麼使用模組?在要是用的模組檔案中通過import 模組名 來匯入模組 模組的四種方式?1 編譯執行模組所對應的py檔案,形成對應的pyc檔案 2 產生該模組自己的全域性命名空間 3 在適應該模組的全域性命名...
python 學習第十五天(繼承)
python中繼承分為單繼承和多繼承 class parent1 如果沒有繼承,python3中會預設繼承object這個類 pass class parent2 pass class son1 parent1 單繼承,父類是parent1 pass class son2 parent1,paren...
PYTHON小白 第十五天
python小白 第十五天 1 再論類命名空間 python的類就像命名空間。python程式預設處於全域性命名空間內,類體則處於類命名空間內,python允許在全域性範圍內放置可執行 當python執行該程式時,這些 就會獲得執行的機會 類似地,python同樣允許在類範圍內放置可執行 當pyth...