爬虫-抓取网页内容

我们的任务 :抓取网页内容

1.用户指定url

2.获取所有的文章的文字

urllib的request模块可以非常方便地抓取URL内容,也就是发送一个GET请求到指定的页面,然后返回HTTP的响应

Python通过re模块提供对正则表达式的支持

from urllib import request
import re

用户输入指定的url

#地址 绑定(编程期间)
#user_url = "https://news.sina.com.cn/o/2018-12-25/doc-ihmutuee2352838.shtml"

#地址 由用户指定(使用期间)
print("请输入您想查看的url")
user_url = input()

请输入您想查看的url
https://www.cnblogs.com/ms-uap/p/9928254.html

获取网页html信息并转码

添加头信息,反爬虫策略

headers = {'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:23.0) Gecko/20100101 Firefox/23.0'}
req = request.Request(user_url, headers=headers)

with request.urlopen(req) as f:
    data = f.read()
data_web = data.decode("utf-8")

我们需要url的标题以及文章进行分析。

提取title标签的正则表达式 我的匹配代码

title = re.findall('<title.*?>(.*?[\u4e00-\u9fa5]*?.*?)</title>', data_web)

for line in title:
    print(line)

系列之1-神经网络的基本工作原理 - UniversalAIPlatform - 博客园

提取p标签的正则表达式 我的匹配代码

article = re.findall('<p.*?>(.*?[\u4e00-\u9fa5]*?.*?)</p>', data_web)

for line in article:
    print(line)
posted @ 2018-12-29 11:17  易班工作室  阅读(816)  评论(0编辑  收藏  举报