千家信息网

怎么用Python爬取网页的数据

发表于:2024-11-30 作者:千家信息网编辑
千家信息网最后更新 2024年11月30日,这篇文章主要介绍"怎么用Python爬取网页的数据",在日常操作中,相信很多人在怎么用Python爬取网页的数据问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"怎么用Py
千家信息网最后更新 2024年11月30日怎么用Python爬取网页的数据

这篇文章主要介绍"怎么用Python爬取网页的数据",在日常操作中,相信很多人在怎么用Python爬取网页的数据问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"怎么用Python爬取网页的数据"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!


准备

IDE:PyCharm
库:requests、lxml

注:
requests:获取网页源代码
lxml:得到网页源代码中的指定数据

搭建环境

这里的搭建环境,可不是搭建python的开发环境,这里的搭建环境是指,我们使用pycharm新建一个python项目,然后弄好requests和lxml
新建一个项目:

依赖库导入

由于我们使用的是pycharm,所以我们导入这两个库就会显的格外简单

import requests

这个时候,requests会报红线,这时候,我们将光标对准requests,按快捷键:alt + enter,pycharm会给出解决之道,这时候,选择install package requests,pycharm就会自动为我们安装了,我们只需要稍等片刻,这个库就安装好了。lxml的安装方式同理.

获取网页源代码

之前我就说过,requests可以很方便的让我们得到网页的源代码
网页就拿我的博客地址举例好了:https://coder-lida.github.io/

获取源码:

# 获取源码
html = requests.get("https://coder-lida.github.io/")
# 打印源码
print html.text

代码就是这么简单,这个html.text便是这个URL的源码

完整代码:

import  requests
import lxml

html = requests.get("https://coder-lida.github.io/")
print (html.text)


打印:


获取指定数据

现在我们已经得到网页源码了,这时就需要用到lxml来来筛选出我们所需要的信息
这里我就以得到我博客列表为例,可以找到原网页通过F12查看XPath,如图

通过XPath的语法获得网页的内容。

查看第一篇文章标题

//*[@id="layout-cart"]/div[1]/a/@title

// 定位根节点
/ 往下层寻找
提取文本内容:/text()
提取属性内容:/@xxxx

import  requests
from lxml import etree

html = requests.get("https://coder-lida.github.io/")
#print (html.text)
etree_html = etree.HTML(html.text)
content = etree_html.xpath('//*[@id="layout-cart"]/div[1]/a/@title')
print(content)

查看所有文章标题

//*[@id="layout-cart"]/div/a/@title

代码:

import  requests
from lxml import etree

html = requests.get("https://coder-lida.github.io/")
#print (html.text)
etree_html = etree.HTML(html.text)
content = etree_html.xpath('//*[@id="layout-cart"]/div/a/@title')
print(content)

输出:

[' springboot逆向工程 ', ' 自己实现一个简单版的HashMap ', ' 开发中常用的 25 个JavaScript 单行代码 ', ' shiro 加密登录 密码加盐处理 ', ' Spring Boot构建RESTful API与单元测试  ', ' 记一次jsoup的使用 ']

到此,关于"怎么用Python爬取网页的数据"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!

0