网页抓取学习(2)

# -*- coding: UTF-8 -*-
#urllib.request — 为打开url提供的可扩展类库
#urlopenurlopen里的一个方法函数通过网址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)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值