我的爬虫第一天

一个简单的爬虫:

1.安装request

pip install requests

在这里插入图片描述

2.测试是否安装成功

输入python
在这里插入图片描述

import requests

在这里插入图片描述
不报错就是安装成功

3.新建项目

在这里插入图片描述

4.使用requests请求网页

import requests #引入requests包

resp=requests.get('https://www.baidu.com') #请求百度首页
print(resp)  #打印请求结果的状态码(正常的状态码是200,异常状态码就很多了,比如404(找不到网页)、301(重定向)等。
print(resp.content)  #打印请求到的网页源码

请求正常:
在这里插入图片描述

4.如何用python解析网页源码

网页源码解析器 BeautifulSoup:但是使用bs4还需要安装另一个类库lxml,用来代替bs4默认的解析器。之所以这样做,是因为默认的那个实在太慢了,换用了lxml后,可以大幅度提升解析速度。
安装:命令行中输入以下指令并回车,安装bs4:
在这里插入图片描述
Windows环境下使用pip install安装lxml库
在这里插入图片描述
测试是否安装成功

import bs4
import lxml

没有报错,安装成功

使用BeautifulSoup+lxml解析网页源码

import requests #引入requests包
from bs4 import BeautifulSoup

resp=requests.get('https://www.baidu.com') #请求百度首页
print(resp)  #打印请求结果的状态码(正常的状态码是200,异常状态码就很多了,比如404(找不到网页)、301(重定向)等。
print(resp.content)  #打印请求到的网页源码

bsobj=BeautifulSoup(resp.content,'lxml') # 将网页源码构造成BeautifulSoup对象,方便操作
#将网页的源码转化成了BeautifulSoup的对象,这样我们可以向操作DOM模型类似地去操作它。
a_list=bsobj.find_all('a')  #获取网页中所有a标签对象
for a in a_list:
    print(a.get('href')) #打印a标签对象的href属性,即这个对象指向的链接地址

在这里插入图片描述

5.简单的保存数据的方法

将刚才提取出来的链接保存到一个名称为url.txt的文本里面去,将上面的代码稍作修改。

import requests #引入requests包
from bs4 import BeautifulSoup

resp=requests.get('https://www.baidu.com') #请求百度首页
print(resp)  #打印请求结果的状态码(正常的状态码是200,异常状态码就很多了,比如404(找不到网页)、301(重定向)等。
print(resp.content)  #打印请求到的网页源码

bsobj=BeautifulSoup(resp.content,'lxml') # 将网页源码构造成BeautifulSoup对象,方便操作
#将网页的源码转化成了BeautifulSoup的对象,这样我们可以向操作DOM模型类似地去操作它。
a_list=bsobj.find_all('a')  #获取网页中所有a标签对象
for a in a_list:
    print(a.get('href')) #打印a标签对象的href属性,即这个对象指向的链接地址
text='' #创建一个空字符串
for a in a_list:
    href=a.get('href') #获取a标签对象的href属性,即这个对象指向的链接地址
    text+=href+'\n' #加入到字符串中,并换行
with open('url.txt','w') as f: #以写的方式打开一个url.txt
    f.write(text)

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值