import re
import requests
from bs4 import BeautifulSoup
#獲取html源代碼
r = requests.get("http://python123.io/ws/demo.html")
demo = r.text
#輸出源代碼
print(demo)
print("==========")
#解析網頁的HTML代碼
soup = BeautifulSoup(demo,"html.parser")
#輸出網址
for link in soup.find_all('a'):
print(link.get('href'))
print("===========")
#輸出名字是a的標籤,輸出名字是a和b的標籤
print(soup.find_all('a'))
print(soup.find_all(['a','b']))
print("===========")
#遍歷出所有標籤的名字
for tag in soup.find_all(True):
print(tag.name)
print("===========")
#遍歷出標籤名是b開頭的標籤名
for tag in soup.find_all(re.compile('b')):
print(tag.name)
#輸出標籤名是p並且屬性包含course字符串的標籤
print(soup.find_all('p','course'))
#輸出屬性爲id='link1'的標籤
print(soup.find_all(id='link1'))
#利用正則表達式輸出id=link開頭的屬性
print(soup.find_all(id=re.compile('link')))
print("========")
#利用rcursive來決定是否對子孫節點進行檢索
print(soup.find_all('a',recursive=False))
#查找
soup.find_all(string='Basic Python')
#利用正則表達式查找
soup.find_all(string=re.compile("python"))