Python 爬虫开发完整环境部署,爬虫核心框架安装

news2024/11/29 20:51:05

Python 爬虫开发完整环境部署

前言:

​ 关于本篇笔记,参考书籍为 《Python 爬虫开发实战3 》 笔记做出来的一方原因是为了自己对 Python 爬虫加深认知,一方面也想为大家解决在爬虫技术区的一些问题,本篇文章所使用的环境为:python 3.6.2 64 位
在此其中,我们可能会碰到不兼容的问题,所以有些软件会降低版本来达到兼容,其实这一点大家没必要较真,一个 python 版本,或者一个库的版本,都代表着一个时间,随着 python3 的出现,就代表着 python2 的不兼容,那么库于库之间,代码于代码之间,就会存在一种依存关系,有些库会更新,而有的就不会跟新,但旧的不代表它已经被淘汰,而是一代技术的成熟,以上是我对版本迭代的思考。
我想,以我现在的水平,还达不到窥探源码来修改这些不兼容的问题,所以既然不兼容,那么我就来兼容它即可,python 亦是如此。

0x01 请求库的安装

爬虫可以简单分为几步:抓取页面,分析页面,存储数据
当我们在抓取页面的时候,需要模拟浏览器向服务器发出请求,所以需要用到一些 python 库来实现 HTTP 请求操作
这里,我们出现了三个库 requests,Selenium,aiohttp
install
请求库:
C:\Users\yangh>pip install requests
'标准请求库'

C:\Users\yangh>pip install selenium 
'Selenium是一个自动化测试工具,利用它我们可以驱动浏览器执行特定的动作,如点击、下拉等操作。对于一些JavaScript渲染的页面来说,这种抓取方式非常有效。下面我们来看看Selenium的安装过程'

C:\Users\yangh>pip3 install aiohttp
'异步请求抓取数据'

C:\Users\yangh>pip3 install cchardet aiodns
'字符集编码库,与加速 DNS 解析库 '

Software:
ChromeDriver['Chrome 对应']:https://chromedriver.storage.googleapis.com/index.html
GeckoDriver['Firefox 对应']:https://github.com/mozilla/geckodriver/releases
ChromeDriver 安装简介
作用:配合 selenium 库,来达到与浏览器配合,能够与 chrome 配合
  1. 先进入网站:https://chromedriver.storage.googleapis.com/index.html

查看 Chrome 版本
img
下载对应版本软件

配置环境变量,并把其放在 python/Script 目录下

验证

img

GeckoDriver 安装简介
作用:配合 selenium 库,来达到与浏览器配合,能够与 firefox 配合

GeckoDriver 安装也与之大同小异,直接下载最新版,然后对应 64/32 解压,拖到 …/python/Script/

验证

img

PhantomJS 安装简介
作用:
    PhantomJS 是一个无界面的、可脚本编程的WebKit浏览器引擎,它原生支持多种Web标准:DOM操作、css选择器、JSON、Canvas以及SVG。Selenium支持PhantomJS,这样在运行的时候就不会再弹出一个浏览器了。而且PhantomJS的运行效率也很高,还支持各种参数配置
  • 官方网站:http://phantomjs.org
  • 官方文档:http://phantomjs.org/quick-start.html
  • 下载地址:http://phantomjs.org/download.html
  • API接门说明:http://phantomjs.org/api/command-line.html

PhantomJS 与 ChromeDriver 配置操作一样,添加到 python/Script 文件夹,然后加入环境变量

验证
这里,由于不想修改 selenium 版本,就没安装完毕

0x02 解析库安装

    在抓取网页代码之后,下一步就是提取网站中的信息,提取信息的方式有多种多样,可以使用正则来提取,'但是正则写起来会相对比较繁琐'。这里还有许多强大的解析库,如,'lxml,Beautiful Soup,pyquery'等,此外还提供了非常强大的解析方法,如 'XPath 解析和 CSS 选择器解析等',利用他们我们可以高效的从网页中提取有效信息
install
1:C:\Users\yangh>pip3 install lxml
2:C:\Users\yangh>pip3 install beautifulsoup4 (beautifulsoup4 即 bs4)
3:C:\codeEnvironment\python\wheel>pip3 insatll pyquery-1.4.3-py3-none-any.whl
4:C:\Users\yangh>pip install pillow
lxml 参考
lxml 是 python 的一个解析库,支持 HTML 和 XML 的解析,支持 XPath 解析方式

官方网站:http://lxml.de

GitHub:https://github.com/lxml/lxml

PyPI:https://pypi.python.org/pypi/lxml

Beautiful Soup 参考
Beautiful Soup 是 Python 的一个 HTML 或 XML 解析库,我们可以用它方便地从网页中提取数据,它拥有强大的 API 和多样的 解析方式

官方文档:https://www.crummy.com/software/Beautifu1Soup/bs4/doc

中文文档:https://www.crummy.com/software/Beautifu!Soup/bs4/doc.zh

PyPI:https://pypi.python.org/pypi/beautifulsoup4

Test Beautiful soup4
>>> from bs4 import BeautifulSoup
>>> soup = BeautifulSoup('<p>Hello</p>','lxml')
>>> print(soup.p.string)
Hello

只要输出 hello 即成功
pyquery 参考
url:https://pypi.org/project/pyquery/#files
pyquery 同样是一个强大的页面解析工具,它提供了和 Jquery 类似的语法来解析 HTML 文档,支持 CSS 选择器
参考链接
  • GitHub:https://github.com/gawel/pyquery
  • PyPI:https://pypi.python.org/pypi/pyquery
  • 官方文档:http://pyquery.readthedocs.io
resserocr 参考
在爬虫过程中,难免会遇到各种各样的验证码,而大多数验证码还是 '图形验证码',这时候我们就可以直接用 OCR 来识别

tesserocr 是 Python 的一个OCR识别库,但其实是对tesseract做的一层PythonAPI封装,所以它的核心是tesseract。因此,在安装tesserocr之前,我们需要先安装 tesseract
相关链接
  1. tesserocrGitHub: https://github.com/sirfz/tesserocr
  2. tesserocrPyPI: https://pypi.python.org/pypi/tesserocr
  3. tesseract 下载地址:http://digi.bib.uni-mannheim.de/tesseract[^ 下载来后,全勾上安装即可]
  4. tesseractGitHub : https://github.com/tesseract-ocr/tesseract
  5. tesseract 语言包:https://github.com/tesseract-ocr/tessdata
  6. tesseract 文档:https://github.com/tesseract-ocr/tesseract/wiki/Documentation
  7. Releases · simonflueckiger/tesserocr-windows_build (github.com)[^ 到这里下载 wheel 文件]

下载安装好后,直接进 OCR 目录:Tesseract-OCR ,复制目录 tessdata 粘贴给 python 根目录一份即可完成安装

验证

测试 tesserocr
img
若正常输出图片内容,则安装成功

测试 tesseract
img

0x03 数据库的安装

作为数据存储的重要部分,数据库同样是必不可少的,数据库可以分为关系型数据库,和非关系型数据库(NOsql),
关系型数据库如:SQLite、MySQL、Oracle、SQL Server、DB2
非关系型数据库:MongoDB、Redis,他们存储形式是键值对,存储形式更加灵活

以下,我们来介绍三种数据库,Mysql 以及 MongoDB、Redis
MySQL 安装参考

下载地址:https://www.mysql.com/cn/downloads

也可以通过国内的 phpstudy 一键搭建

注意,通过官网下载的需要开启本地服务 MySQL

MongoDB 的安装
    MongoDB 是由 C++ 语言编写的非关系型数据库,是一个基于分布式文件存储的开源数据库系统,其内容存储形式类似JSON对象,它的字段值可以包含其他文档、数组及文档数组,非常灵活。MongoDB支持多种平台,包括Windows、Linux、MacOS、Solaris等,在其官方网站(https://www. mongodb.com/download-center)均可找到对应的安装包。
  • 官方网站:https://www.mongodb.com
  • 官方文档:https://docs.mongodb.com
  • GitHub:https://github.com/mongodb
  • 中文教程:http://www.runoob.com/mongodb/mongodb-tutorial.html
  • 下载网址:MongoDB Community Download | MongoDB
  • MongoDB安装(超详细)
Redis 安装
  • 官方网站:https://redis.io
  • 官方文档:https://redis.io/documentation
  • 中文官网:http://www.redis.cn
  • GitHub:https://github.com/antirez/redis
  • 中文教程:http://www.runoob.com/redis/redis-tutorial.html
  • RedisDesktop Manager: https://redisdesktop.com
  • Redis Desktop Manager GitHub: https://github.com/uglide/RedisDesktopManager
  • 下载 redis:https://github.com/microsoftarchive/redis/releases
  • 下载 redis 可视化程序:https://wwx.lanzoui.com/it7Eqnacdeh

下载来后一键安装即可默认用户 root 密码 root

0x04 存储库的安装

我们上面只说到存储数据的一个方式,即数据库,但是我们要数据库与我们的 python 交互,那么就需要 '存储库',如   'Mysql 需要安装 PyMySQL','MongoDB 需要安装 PyMongo 等'
PyMySQL 安装
C:\Users\yangh>pip3 install pymysql
验证

img

相关链接
  • GitHub:https://github.com/PyMySQL/PyMySQL
  • 官方文梢:http://pymysql.readthedocs.io/
  • PyPl: https://pypi.python.org/pypi/PyMySQL
PyMongo 安装
C:\Users\yangh>pip3 install pymongo
验证

img

相关链接
  • GitHub:https://github.com/mongodb/mongo-python-driver
  • 官方文档:https://api.mongodb.com/python/current/
  • PyPI: https://pypi.python.org/pypi/pymongo
redis-py 安装
C:\Users\yangh>pip3 install redis
验证
输出如下即成功安装

C:\Users\yangh>python
Python 3.6.2 (v3.6.2:5fd33b5, Jul  8 2017, 04:57:36) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import redis
>>> redis.VERSION
(4, 0, 2)
相关链接
  • GitHub:https://github.com/andymccurdy/redis-py
  • 官方文档:https://redis-py.readthedocs.io/
RedisDump 安装
RedisDump 作用与 Redis 的导入导出工具,基于 Ruby 实现,所以需要先下载 'Ruby'
Ruby for windows

访问网站:https://rubyinstaller.org/downloads/ 下载即可

gem 安装

这里我们安装 ruby 后就能使用 gem 命令,来下载 RedisDump
img

验证

img

相关链接
  • GitHub:https://github.com/delano/redis-dump
  • 官方文档:http://delanotes.com/redis-dump
  • Ruby http://www.ruby-lang.org/zh_cn/documentation/installation

0x05 Web 库的安装

    Python 也有 Web 程序服务 'Flask,Django 等',我们可以用他们来开发 '网站' 和 '接口',我们主要拿来做 'API 接口',供 我们的 '爬虫' 使用
    比如,维护一个嗲鲤齿,代理保存在 Redis 数据库中,我们要将代理池作为一个公共的组件使用,那么如何构建一个方便的平台来供我们获取这些代理呢?最适合的就是 Web 服务提供的 'API 接口','我们只需要请求接口即可获取新的代理'
Flask 安装

Flask 是一个轻量级的 Web 服务程序,它简单、易用、灵活、主要用于 API 服务

C:\Users\yangh>pip3 install flask
验证

img

后面,我们会利用 Flask+Redis 维护动态代理池和 Cookies

相关链接
  • GitHub:https://github.com/pallets/flask
  • 官方文档:http://flask.pocoo.org
  • 中文文档:http://docs.jinkan.org.docs/flask
  • PyPI :https://pypi.python.org/pypi/Flask
Tornado 的安装

Tornado 是一个支持 “异步” 的web框架,通过使用 “非阻塞 I/O 流”,它可以支撑成千上万的开放链接!

C:\Users\yangh>pip3 install tornado
验证

img
img

后面,我们会利用 Tomado+Redis 来搭建一个ADSL拨号代理池

相关链接
  • GitHub:https://github.com/tomadoweb/tomado
  • PyPI:https://pypi.python.org/pypi/tomado
  • 官方文档:http://www.tomadoweb.org

0x06 APP 爬取相关库的安装

    除了 Web 网页,爬虫也可以抓取 'App 的数据',App 中的页面要加载出来,首先需要获取数据,而这些数据一般是通过请求服务器的接口来获取的。由于 App 没有浏览器这种可以比较直观的看到后台请求的工具,所以主要用一些抓包技术来抓取数据

本地测试工具有:

  1. Charles
  2. mitmproxy
  3. mitmdump
  4. Appium

一些简单的接口可以通过 Charles 或 mitmproxy分析,找出规律,然后直接用程序模拟来抓取了,但如果遇到更加复杂的接口,就需要利用 mitmdump 对接 python来抓取到的请求和响应进行实时处理和保存,另外,既然要做规模采集,就需要自动化 App 的操作而不是人工采集,这里我们还会需要一个工具 Appium,它可以像 Selenium 一样对 App 将那些自动化控制,如自动化模拟 App 的点击,下拉等操作

Charles 的安装

下载:https://www.charlesproxy.com/latest-release/download.do

破解:https://www.zzzmode.com/mytools/charles/

安装 CA 证书:
img
img

安装完后可同时设置 Android 于之存在一个局域网,参考以下即可

    如果你的手机是Android系统,可以按照下面的操作进行证书配置。在Android系统中,同样需要设置代理为Charles的代理。设置完毕后,电脑上就会出现一个提示窗口,询问是否信任此设备,此时直接点击Allow按钮即可。接下来,像iOS设备那样,在手机浏览器上打开chls.pro/ssl,这时会出现一个提示框

img

mitmproxy 安装

mitmproxy是一个支持 HTTP 和 HTTPS 的抓包程序,类似 Fiddler,charles功能,只不过,它通过控制台的形式操作。

此外,mitmproxy 还有两个关联组件,一个是 mitmdump,它是 mitmproxy 的命令行接口,利用它可以对接 Python 脚本实现监听后的处理;另一个是mitmweb 它是一个 web 程序,通过它以清除地观察到 mitmproxy 捕获的请求

C:\Users\yangh>pip install mitmproxy==5.0.0

即可查看到 CA 证书

安装 CA 证书

跟着图片步骤走即可
img

证书配置

对于 mitmproxy来说,如果想要截取 HTTPS 请求,就需要设置证书。mitmproxy 在安装后会提供一套 CA 证书,只要客户端信任即可,步骤如下
img
img
img
img

相关链接
  • GitHub:https://github.com/mitmproxy/mitmproxy
  • 官方网站:https://mitmproxy.org
  • PyPI: https://pypi.python.org/pypi/mitmproxy
  • 官方文档:http://docs.mitmproxy.org
  • mitmdump脚本:http://docs.mitmproxy.org/en/stable/scripting/overview.html
  • 下载地址:https://github.com/mitmproxy/mitmproxy/releases
  • DockerHub:https://hub.docker.com/r/mitmproxy/mitmproxy
Appium 安装

首先,需要安装AppiumAppium负责驱动移动端来完成一系列操作,对于iOS设备来说,它使用苹果的UIAutomation来实现驱动;对于Android来说,它使用UIAutomator和Selendroid来实现驱动同时Appium也相当于一个服务器,我们可以向它发送一些操作指令,它会根据不同的指令对移动设备进行驱动,以完成不同的动作。

下载网址:https://github.com/appium/appium-desktop/releases

安装完后即可显示如下即安装成功:
img

以上,我们可以配合 Android 模拟器等来实现即可!

0x07 爬虫核心框架安装

我们直接用 requests、Selenium 等库来写爬虫,如果爬取量不是太大,速度要求不高,是完全可以满足需求的。但是写多了就会发现其内部许多代码和组件是可以重复利用的,如果我们把这些组件抽离出来,将各个功能模块化,就会慢慢形成一个框架雏形,这样慢慢培养它,就像自己养虫子一样,爬虫框架也会越来越来完善。

我们利用框架,就可以不再去关心某些功能的具体实现,只需要关系爬取的逻辑即可。同时也可大大简化代码量,而且框架会变得清晰,爬取效率也会高很多。所以,如果有一定基础,上手框架是一种好的选择。

以下我们主要介绍 pyspider 和 Scrapy 两种框架。

Pyspider 安装
简介:

pyspider是国人 binux 编写的一个网络爬虫框架,它拥有强大的 WebUI、脚本编辑器、任务监控器、项目管理器、结果处理器。同时支持多种数据库后端、多种消息队列、还支持 JavaScript 渲染页面的爬取

安装
C:\Users\yangh>pip3 install pyspider
验证:

img

常见 windows 错误

1:Command ”python setup.py egg_info”failedwith error code 1 in /tmp/pip-build-vXo1W3/pycurl

这是PyCurl安装错误,此时需要安装PyCurl库。从 http://www.lfd.uci.edu/~gohlke/pythonlibs/#pycurl 找到对应的Python版本,然后下载相应的wheel文件即可。比如Windows64位、Python3.6,则需要下载pycurl-7.43.0-cp36-cp36m-win _ amd64.whl,随后用pip安装即可,命令如下

C:\codeEnvironment\python\wheel>pip install pycurl-7.43.0.4-cp36-cp36m-win_amd64.whl

2:若出现报错即直接停止 pyspider 进程,说明 wsgidav ,werkzeug 版本过高,操作如下

C:\Users\yangh>pip uninstall wsgidav
C:\Users\yangh>pip install wsgidav==2.0.1
C:\Users\yangh>python -m pip  uninstall werkzeug
C:\Users\yangh>python -m pip install werkzeug==0.16.1

重新启动 pyspider 即可

相关链接
  • 官方文档:http://docs.pyspider.org
  • PyPI: https://pypi.python.org/pypi/pyspider
  • GitHub:https://github.corn/binux/pyspider
  • 官方教程:http://docs.pyspider.org/en/latest/tutorial
  • 在线实例:http://demo.pyspider.org
  • pyspider 坑参考:https://blog.csdn.net/huangzyi/article/details/114289498
  • 踩坑参考:https://blog.csdn.net/lang_niu/article/details/104501473
  • 踩坑参考:https://blog.csdn.net/qq_39542714/article/details/106835145
  • 踩坑参考:https://blog.csdn.net/weixin_30408675/article/details/97132148
Scrapy 安装

Scrapy 是一个十分强大的爬虫框架,依赖的库比较多,至少需要依赖的库有 Twisted 14.0、lxml 3.4 和 pyOpenSSL 0.14.在不同的平台环境下,它所依赖的库也各不相同,所以在安装 Scrapy 之前,必须把基本库环境安装好,这里笔者只介绍关于 windows 10 的安装

依赖:Anaconda 安装

关于这一种安装方法,大家注意,如果本地已经安装了 Python,就不要用 conda 的安装了,参考后面的安装即可

关于 Anaconda 的安装方式,大家可以去看这篇文章:

https://blog.csdn.net/ITLearnHall/article/details/81708148)

在此不再赘述

安装好后直接输出该命令即可安装完毕:conda install Scrapy

依赖 lxml 安装
C:\Users\yangh>pip install lxml
依赖 pyOpenSSL

关于 pyOpenSSL 直接去官网下载 whl 文件安装即可:https://pypi.python.org/pypi/pyOpenSSL#downloads

C:\codeEnvironment\python\wheel>pip install pyOpenSSL-17.2.0-py2.py3-none-any.whl
依赖 Twisted 安装

下载地址:http://www.lfd.uci.edu/~gohlke/pythonlibs/#twisted 下载wheel文件

C:\codeEnvironment\python\wheel>pip install Twisted-20.3.0-cp36-cp36m-win_amd64.whl
依赖 PyWin32

从官方网站下载对应版本的安装包即可

链接为:https://sourceforge.net/projects/pywin32/files/pywin32/Build%20221

下载过来后,直接双击 exe 安装即可

End Scrapy 安装
C:\Users\yangh>pip3 install Scrapy
验证
C:\codeEnvironment\python\wheel>Scrapy
Scrapy 2.5.1 - no active project

Usage:
  scrapy <command> [options] [args]

Available commands:
  bench         Run quick benchmark test
  commands
  fetch         Fetch a URL using the Scrapy downloader
  genspider     Generate new spider using pre-defined templates
  runspider     Run a self-contained spider (without creating a project)
  settings      Get settings values
  shell         Interactive scraping console
  startproject  Create new project
  version       Print Scrapy version
  view          Open URL in browser, as seen by Scrapy

  [ more ]      More commands available when run from project directory

Use "scrapy <command> -h" to see more info about a command
相关链接:
  • 官方网站:https://scrapy.org
  • 官方文档:https://docs.scrapy.org
  • PyPI:https://pypi.python.org/pypi/Scrapy
  • GitHub:https://github.com/scrapy/scrapy
  • 中文文梢:http://scrapy-chs.readthedocs.io
Scrapy-Splash 安装

Scrapy-Splash 是一个 Scrapy 中支持 JavaScript 渲染的工具

Scrapy-Splash 的安装分为两部分。

1:Splash 服务的安装,具体通过 Docker 安装后会启动一个 Splash 服务,我们可以通过它的接口来实现 JavaScript 页面的加载

2:Scrapy-Splash 的 Python 库的安装,安装之后即可在 Scrapy 中使用 Splash 服务

在安装之前需要先确保自己有 docker 这个应用,若没有,可以参考 笔者的笔记 docker 的安装于部署

安装
docker run -p 8050:8050 scrapinghub/splash
验证

img

img

可以看到,docker 已经把镜像拉过来了。以后要运行 Scrapy-Splash 直接本地开 docker 即可

相关链接
  • GitHub: https://github.com/scrapy-plugins/scrapy-splash
  • PyPI: https://pypi.python.org/pypi/scrapy-splash
  • 使用说明:https://github.com/scrapy-plugins/scrapy-splash#configuration
  • Splash官方文档:http://splash.readthedocs.io
Scrapy-Redis 安装

Scrapy-Redis 是 Scrapy 的分布式扩展模块,有了它,我们就可以实现 Scrapy 分布式爬虫的搭建

C:\Users\yangh>pip3 install scrapy-redis
验证:

导入库不报错即可
img

相关链接
  • GitHub:https://github.com/rmax/scrapy-redis
  • PyPI:https://pypi.python.org/pypi/scrapy-redis
  • 官方文档:http://scrapy-redis.readthedocs.io

0x08:部署其他相关库

Scrapyrt 安装
pip3 install scrapyrt
后面运行,需要在一个 scrapy 项目中运行才可,默认存在 9080 端口,使用 -p 端口切换
scrapyrt -p 9081
Gerapy 安装
pip3 install gerapy

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1318138.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

网络攻击1——网络安全基本概念与终端安全介绍(僵尸网路、勒索病毒、木马植入、0day漏洞)

目录 网络安全的基本术语 黑客攻击路径 终端安全 僵尸网络 勒索病毒 挖矿病毒 宏病毒 木马的植入 0day漏洞 流氓/间谍软件 网络安全的基本术语 网络安全的定义&#xff08;CIA原则&#xff09; 数据的保密性Confidentiality&#xff08;对称/非对称秘钥&#xff09; …

mysql innodb知识记录

官方文档 官网架构图 innodb 特性 内存 buffer pool 采用优化后的LRU算法&#xff0c; 3/8 of the buffer pool is devoted to the old sublist.The midpoint of the list is the boundary where the tail of the new sublist meets the head of the old sublist.When In…

C语言-Makefile

Makefile 什么是make&#xff1f; make 是个命令&#xff0c;是个可执行程序&#xff0c;用来解析 Makefile 文件的命令这个命令存放在 /usr/bin/ 什么是 makefile? makefile 是个文件&#xff0c;这个文件中描述了我们程序的编译规则咱们执行 make 命令的时候&#xff0c; m…

[DroneCAN]CAN-Convertor控制CAN电调电机

简介 CAN电调电机是一类通过CAN协议控制转速的电调电机&#xff0c;和传统的PWM电调电机不同在于&#xff0c;CAN协议有网络性和抗干扰性&#xff0c;因此其性能比PWM更好&#xff0c;占用的端口数也会更少。在apm或者px4等基于dronecan的飞控来说&#xff0c;想要控制第三方的…

【CMU 15-445】Lecture 10: Sorting Aggregations Algorithms 学习笔记

Sorting & Aggregations Algorithms SortingTop-N Heap SortExternal Merge Sort2-WAY External Merge SortK-WAY External Merge SortDouble Buffering Optimization AggregationsSortingHashing 本节课主要介绍的是数据库系统中的排序算法以及聚合算法 Sorting 排序算法…

大模型自定义算子优化方案学习笔记:CUDA算子定义、算子编译、正反向梯度实现

01算子优化的意义 随着大模型应用的普及以及算力紧缺&#xff0c;下一步对于计算性能的追求一定是技术的核心方向。因为目前大模型的计算逻辑是由一个个独立的算子或者说OP正反向求导实现的&#xff0c;底层往往调用的是GPU提供的CUDA的驱动程序。如果不能对于整个计算过程学习…

LearnDash LMS ProPanel在线学习系统课程创作者的分析工具

点击阅读LearnDash LMS ProPanel在线学习系统课程创作者的分析工具原文 LearnDash LMS ProPanel在线学习系统课程创作者的分析工具通过整合报告和作业管理来增强您的 LearnDash 管理体验&#xff0c;使您能够发送特定于课程的通信&#xff0c;并显示课程的实时活动&#xff01…

分类信息网商业运营版源码系统:适合各类行业分类站点建站 带安装部署教程

随着互联网的快速发展&#xff0c;信息分类网站在各个行业中得到了广泛应用。为了满足不同行业的需求&#xff0c;罗峰给大家分享一款适合各类行业分类站点建站的商业运营版源码系统。该系统旨在提供一套完整的解决方案&#xff0c;帮助用户快速搭建自己的分类信息网站&#xf…

【最新版】在WSL上运行 Linux GUI (图形用户界面)应用(Gnome 文本编辑器、GIMP、Nautilus、VLC、X11 应用)

文章目录 一、 安装WSL0. 先决条件1. 全新安装2. 现有 WSL 安装3. 注意事项 二、运行 Linux GUI 应用1. 更新发行版中的包2. 安装 Gnome 文本编辑器启动 3. 安装 GIMP启动 4. 安装 Nautilus启动 5. 安装 VLC启动 6. 安装 X11 应用 适用于 Linux 的 Windows 子系统 (WSL) 现在支…

Javaweb考前复习冲刺(不断更新版)

Javaweb考前复习冲刺 第一章&#xff1a; JavaWeb 入门 JavaWeb是指&#xff1a;以Java作为后台语言的项目工程。 javaweb项目创建的过程&#xff1a; 首先集成Tomcat服务器环境新建dynamic web project部署工程运行 路由含义&#xff1a; ​ http://localhost:8080/工程…

Redis 主从集群 —— 超详细操作演示!

五、Redis 主从集群 五、Redis 主从集群5.1 主从集群搭建5.1.1、伪集群搭建与配置5.1.2、分级管理5.1.3、容灾冷处理 5.2 主从复制原理5.2.1、主从复制原理5.2.2、数据同步演变过程 5.3 哨兵机制实现5.3.1 简介5.3.2 Redis高可用集群搭建5.3.3 Redis高可用集群的启动5.3.4 Sent…

ubuntu创建apt-mirror本地仓库

首先创建apt-mirror的服务端&#xff0c;也就是存储所有apt-get下载的文件和依赖。大约需要300G&#xff0c;预留400G左右空间就可以开始了。 安装ubuntu省略&#xff0c;用的是ubuntu202204 ubuntu挂载硬盘&#xff08;不需要的可以跳过&#xff09;: #下载挂载工具 sudo apt…

Java并发(十九)----Monitor原理及Synchronized原理

1、Java 对象头 以 32 位虚拟机为例 普通对象 |--------------------------------------------------------------| | Object Header (64 bits) | |------------------------------------|-------------------------| | Mark W…

序列生成模型(一):序列概率模型

文章目录 前言1. 序列数据2. 序列数据的潜在规律3. 序列概率模型的两个基本问题 一、序列概率模型1. 理论基础序列的概率分解自回归生成模型 2. 序列生成 前言 深度学习在处理序列数据方面取得了巨大的成功&#xff0c;尤其是在自然语言处理领域。序列数据可以是文本、声音、视…

pytorch和pytorchvision安装

参考https://blog.csdn.net/2301_76863102/article/details/129369549 https://blog.csdn.net/weixin_43798572/article/details/123122477 查看我的版本 右键&#xff0c;nvivdia控制面板&#xff0c;帮助&#xff0c;系统信息 驱动程序版本号为528.49 更新很快的 CUDA版本…

stm32F4——BEEP与按键的实例使用

stm32F4——BEEP与按键的实例使用 蜂鸣器和按键的实质都是GPIO的使用&#xff0c;所以基本原理就不介绍啦&#xff0c;基本寄存器其实都是GPIO的高低电平的赋值&#xff0c;可以参考stm32——LEDGPIO的详细介绍 文章目录 stm32F4——BEEP与按键的实例使用一、BEEP二、 KEY三、通…

MySQL数据库 DML

目录 DML概述 添加数据 修改数据 删除数据 DML概述 DML英文全称是Data Manipulation Language(数据操作语言)&#xff0c;用来对数据库中表的数据记录进行增、删、改操作。 添加数据(工NSERT)修改数据(UPDATE)删除数据(DELETE) 添加数据 (1)给指定字段添加数据 INSERT …

Epic 安装失败,错误代码SUPQR1612,必要的先决条件安装失败,弹窗CD-ROM

错误记录 并且弹出来这个窗口the feature you are trying to use is on a CD-ROM or other removable disk that is not available. 让我寻找这个msi文件 正在想办法解决 如果有人能解决 麻烦告知评论区&#xff01;

网络安全事件分级指南

文章目录 一、特别重大网络安全事件符合下列情形之一的&#xff0c;为特别重大网络安全事件&#xff1a;通常情况下&#xff0c;满足下列条件之一的&#xff0c;可判别为特别重大网络安全事件&#xff1a; 二、重大网络安全事件符合下列情形之一且未达到特别重大网络安全事件的…

C++软件调试与异常排查技术从入门到精通学习路线分享

目录 1、概述 2、全面了解引发C软件异常的常见原因 3、熟练掌握排查C软件异常的常见手段与方法 3.1、IDE调试 3.2、添加打印日志 3.3、分块注释代码 3.4、数据断点 3.5、历史版本比对法 3.6、Windbg静态分析与动态调试 3.7、使用IDA查看汇编代码 3.8、使用常用工具分…