自学内容网 自学内容网

python—爬虫的初步了解

Python 爬虫(Web Scraping)是一种自动化从网站上提取数据的技术。Python 由于其简洁的语法、丰富的库和强大的社区支持,成为了实现网络爬虫的首选语言之一。下面是一些Python爬虫的基本概念和步骤:

1. 爬虫的基本概念

  • 请求(Request):爬虫向服务器发送的请求,通常包括URL、HTTP方法(如GET、POST)、请求头等。
  • 响应(Response):服务器对爬虫请求的回应,包含请求的网页内容(HTML、JSON等)、状态码(如200表示成功)、响应头等。
  • 解析(Parsing):从响应内容中提取需要的数据。这通常涉及到HTML或JSON的解析。
  • 存储(Storing):将提取的数据保存到数据库、文件或其他存储系统中。

2. Python 爬虫的基本步骤

确定目标:明确要爬取的网站和数据。
发送请求:使用Python的库(如requests、urllib)向目标网站发送HTTP请求。
获取响应:接收服务器返回的响应内容。
解析内容:使用HTML解析库(如BeautifulSoup、lxml)或JSON解析库(Python内置的json模块)来解析响应内容,提取所需数据。
数据存储:将提取的数据保存到文件、数据库或其他存储介质中。
异常处理:添加异常处理逻辑,确保爬虫的稳定性和健壮性。
遵守规则:遵守robots.txt协议和网站的使用条款,不要对网站造成过大压力。

3. 常用的Python库

  • requests:用于发送HTTP请求。
  • BeautifulSoup:用于解析HTML和XML文件,提取数据。
  • lxml:另一种HTML和XML解析库,速度比BeautifulSoup快。
  • json:Python内置的库,用于解析JSON数据。
  • re:Python内置的库,用于正则表达式匹配。
  • pandas:用于数据处理和分析,方便地将数据保存到CSV或Excel文件中。
  • Scrapy:一个快速高级的Web爬虫框架,用于爬取网站并从页面中提取结构化的数据。

4.爬虫相关知识

  • URL:统一资源定位符 uniform resource locator

bdce42aed53c6987a10545ea9e6a1e6.png
http: 超文本传输协议 HyperText Transfer Protocol 默认端口 80

https: 安全的超文本传输协议 security 默认端口 443
www.example.com 域名
/path/to/myfile.html 资源路径

  • 前端代码
<!DOCTYPE html> 声明为 HTML5 文档
<html>..</html> 是网页的根元素
<head>..</head> 元素包含了文档的元(meta)数据,如 <meta charset="utf-8"> 定义网页编码格式为 utf-8<title>..<title> 元素描述了文档的标题
<body>..</body> 表示用户可见的内容
<div>..</div> 表示框架
<p>..</p> 表示段落
<ul>..</ul> 定义无序列表
<ol>..</ol>定义有序列表
<li>..</li>表示列表项
<img src="" alt="">表示图片
<h1>..</h1>表示标题
<a href="">..</a>表示超链接
<!DOCTYPE html>
<html>
    <head>
        <!-- 内嵌样式 -->
        <style type="text/css">
        body{
            background-color:yellow;
        }
        p{
            font-size: 30px;
            color: springgreen;
        }
        </style>
        <meta charset="utf-8">
        <title>红米煮粥</title>
    </head>
    <body>
        <a href="www.anhuisjxy.com">点击访问</a>
        <h1>红米煮粥www.anhuisjxy.com</h1>
        <h2>Python爬虫</h2>
        <div>
            <p>认识网页结构</p>
            <ul>
                <li>HTML</li>
                <li>CSS</li>
            </ul>
        </div>
    </body>
</html>
<!DOCTYPE html>
<html>
    <head>
        <style type="text/css">
        body{
            background-color: rgb(220, 226, 226);
        }
        </style>
        <meta charset="utf-8">
        <title>红米煮粥</title>
    </head>
    <body>
        <h1 style="color: blue;">红米煮粥www.anhuisjxy.com</h1>
        <h2>Python爬虫</h2>
        <p>点击下方按钮获取当前时间</p>
        <button onclick="DisplayDate()">点击这里</button>
        <p id="time" style="color: red;"></p>
        <!-- script标签内部编写js代码 -->
        <script>
            function DisplayDate(){
            document.getElementById("time").innerHTML=Date()
            }
        </script>
        </div>
    </body>
</html>

5.爬虫相关包的下载

  • 安装requests,lxml包
pip install requests
  • pip 换源
pip config set global.index-url https://pypi.mirrors.ustc.edu.cn/simple/
pip config set install.trusted-host pypi.mirrors.ustc.edu.cn
  • User-Agent: 身份标识 表示你是哪个浏览器

原文地址:https://blog.csdn.net/2301_77698138/article/details/140558072

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!