# -*- coding: UTF-8 -*- #urllib.request — 为打开url提供的可扩展类库 #urlopen是urlopen里的一个方法函数通过网址URL来获取数据 from urllib.request import urlopen # if has Chinese, apply decode() #read():打开一个网页获取所有的内容 html = urlopen("http://www.baidu.com/").read().decode('utf-8') print(html) #抓取title #如果我们想用代码找到这个网页的 title, 我们就能这样写. 选好要使用的 tag 名称 <title>. 使用正则匹配. import re res = re.findall(r"<title>(.+?)</title>", html) print("\nPage title is: ", res[0]) #抓取<body>下面的:<p>(.*?)</p> #如果想要找到中间的那个段落 <p>, 我们使用下面方法, # 因为这个段落在 HTML 中还夹杂着 tab, new line, # 所以我们给一个 flags=re.DOTALL 来对这些 tab, new line 不敏感.
#.*?抓链接! res = re.findall(r"<p>(.*?)</p>", html, flags=re.DOTALL) # re.DOTALL if multi line print("\nPage paragraph is: ", res[0]) #整个网页超链接?href res = re.findall(r'href="(.*?)"', html) print("\nAll links: ", res)