网络爬虫

文章目录

1 概述

网络爬虫应用一般分为两个步骤:
通过网页链接获取网页内容;对获得的网页内容进行处理。

这两个步骤分别使用不同的函数库:requests和beautifulsoup4。

采用pip指令安装requests库:

pip install requests

网络爬虫
request库是一个简洁且简单的处理HTTP请求的第三方库,这个库建立在python语言的urllib3库的基础上。requests库支持非常丰富的链接访问功能,包括国际域名和URL获取、HTTP长连接和连接缓存、HTTP会话和cookie保持、流数据下载等。
采用pip指令安装beautifulsoup4库:

pip install beautifulsoup4

网络爬虫
beautifulsoup4库由于解析和处理HTML和XML。beautifulsoup4采用面向对象思想实现,简单的说,他把每个页面当作一个对象,通过< a >.< b >的方式调用对象的属性(即包含的内容),或者通过< a >.< b >()的方式调用方法(即处理函数)。
在使用beautifulsoup4库之前,需要进行引用,可以用from-import方式从库中直接引用BeautifulSoup类,方法如下:

from bs4 import BeautifulSoup

2 简单爬虫实例

参考博客

import requests   #对网页进行请求
from bs4 import BeautifulSoup   #网页解析库
for i in range(0,100,10):  #0到100以10为步长,range总是考虑后面的数减步长
    url = 'http://maoyan.com/board/4?offset={}'.format(i)   #猫眼top100数据所在网页
    headers = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36'}   #因为猫眼对爬虫或许有反爬措施,所以这里进行简单的处理,将我们的爬虫伪装成是人访问
    response = requests.get(url,headers = headers)     #对网页进行请求并返回值
    html = response.text      #将网页内容以html返回
    soup = BeautifulSoup(html,'lxml')      #解析网页的一种方法
    name = soup.find_all('p',class_="name")    #对电影名字的定位
    score = soup.find_all('p',class_="score")   #对电影评分的定位
    time = soup.find_all('p',class_="releasetime")  #对电影上映时间的定位
    artist = soup.find_all('p',class_="star")       #对主演的定位
    dic = {}    #创建一个字典,用来储存
    for n in range(len(name)) :         #对于每一部电影进行同样的内容处理
        print(name[n].text)   #实现提取电影名字
        print(artist[n].text.strip()[3:])   #获取主演名字
        print(time[n].text[5:])    #上映时间
        print(score[n].text)   #评分
        print(dic)  #输出字典

运行结果:网络爬虫

网络爬虫网络爬虫 qq_40945375 发布了8 篇原创文章 · 获赞 0 · 访问量 151 私信 关注
上一篇:IOS开发学习笔记(2)-----UIButton 详解


下一篇:MacBook Air2019在移动硬盘上安装Win10