Python网络爬虫与信息提取学习
本文基于《Python网络爬虫与信息提取》的学习,参考资料源于“Python网络爬虫与信息提取 北京理工大学:嵩天”,视频链接如下:
学习视频
(学习视频的课程排序不太准确,注意先看某节的简介/介绍,再看内容,最后看总结,【可以参考本文目录顺序】)
视频嵩老师使用python自带的IDLE,而本博客作者使用IDE为pycharm,因此在交互式部分的代码会有出入
导入——课程全局
单元一 Requests库入门
1、HTTP协议及Requests库方法(SHD)
(1)HTTP协议
(2)Requests库的7个主要方法
对比我们可以看到,HTTP协议与Requests对资源操作一一对应。
下面就Requests中的部分方法进行操作:
import requests
r = requests.head("http://httpbin.org/get")
print(r.headers)
{‘Date’: ‘Fri, 03 Jul 2020 11:09:50 GMT’, ‘Content-Type’: ‘application/json’, ‘Content-Length’: ‘307’, ‘Connection’: ‘keep-alive’, ‘Server’: ‘gunicorn/19.9.0’, ‘Access-Control-Allow-Origin’: ‘*’, ‘Access-Control-Allow-Credentials’: ‘true’}
import requests
r = requests.head("http://httpbin.org/get")
print(r.text)
结果为空值
向URL发送post请求,相当于传递新增数据,而put还会覆盖原有数据。当然,在一些URL中,POST和PUT方法也会不被允许使用,上述例子在我访问的时候已经不被运行使用了。上述例子主要是为了了解使用这些方法后,URL会如何处理这些数据。
2、Requests的get方法
(1)get方法
首先使用get方法发出请求
(2)Requests库的2个对象
注意Requests库的2个重要对象,我们不仅要发出请求,还要得到响应
(3)Response响应
下列就是我们调用响应的方法:
下面我们就访问b站首页并获取响应内容
import requests
r = requests.get("https://www.bilibili.com/")
print(r.status_code)
print(type(r))
print(r.headers)
那么使用request访问基本流程就是这样的:
对于响应内容的编码类型,有两种获取方式,r.encoding是根据HTTP头文件中是否存在charset来判断,而r.apparent_encoding是就返回内容分析,因此从后者中可以更准确了解响应内容的编码格式。
import requests
r = requests.get("https://www.baidu.com/")
print(r.encoding)
print(r.apparent_encoding)
ISO-8859-1
utf-8
这样就可以便于我们去解析响应内容,如果直接返回原格式相应内容:
下面我们修改解析方式
import requests
r = requests.get("https://www.baidu.com/")
r.encoding = "utf-8"
print(r.text)
这样可以解析中文,使得人眼可读性提高
3、Rquests库主要方法解析
(1)requests库的request方法
(2)request方法的13个控制参数
下面介绍 13个访问的控制参数:
以上就是13个控制参数。
(3)requests库的其他方法
下面介绍requests的其他方法:
对于requests库中所有方法,最常用的就是request、get和head三个方法。在我们访问时,可以通过请求传递信息,这些信息就可能导致网络安全性问题,因此上面其他的几个方法很有可能就不被允许使用。
单元小结
以上介绍了requests库的方法,在使用时最多的就是request、get和head。同时,我们还需要认识到——“网络链接有风险,异常处理很重要!”下面就介绍如何处理异常:
首先了解一下requests的异常:
import requests
try:#尝试去运行r = requests.get("https://www.baidu.com/")r.raise_for_status()#判断响应状态码是否为200,如果不是200,它就会产生一个HttpError的异常r.encoding = "utf-8"print(r.text)
except:print("产生异常")
由此我们获得一个通用框架:
单元二 网络爬虫“盗亦有道”
1、Robots协议
直接在网址后面加上“/robots.txxt”
在上面的robots文件中,作出以下规定:
Allow规定以其后开头的URL是允许robot访问的,Disallow规定以其后开头的URL是不允许访问的,这里的User-agent(用户代理)指明了爬虫的引擎。在协议的后面,例如最后一个,表明了:禁止该搜索引擎访问网站的任何部分。
当然,并不是所有网站都会有robots协议,如果没有这个协议,默认是允许所有用户访问任意部分。
2、对robots协议理解
无论我们爬取什么数据,网络爬虫都应该遵守robots协议。
3、网络爬虫的约束
(1)网络爬虫的大小
(2)网络爬虫带来的问题
网络爬虫会带来很多问题,主要是下面三类:
因此网页维护者会采取来源审查和发布公告两种方式来限制网络爬虫,
(3)网站维护者的约束方式
除了Robots协议之外,我们在使用爬虫时还需要进行自我约束,过于快速或者频密的网络爬虫都会对服务器产生巨大的压力,可能引起网站封锁你的访问ID,甚至采取进一步的法律行动。因此,在使用爬虫时,需要对请求速度进行合适的调整。
单元三 Requests库的5个实例
1、爬取京东商品页面
浏览商品信息
import requests
r = requests.get("https://item.jd.com/12441345483.html")
print(r.status_code)
print(r.encoding)
利用get方法获取网络链接状态码和网页编码类型
200
UTF-8
然后使用r.text打印内容,当然,这里需要登陆,这就需要提交一组账户密码组织键值对对象给网页,或者事先登录(这里就自己动手吧)。
2、爬取亚马逊商品页面
(1)实例操作
这是课程中出现的问题,亚马逊网站直接拒绝我们的请求,因为我们发出的请求头很坦诚的告诉亚马逊网站自己是python发出的,因此我们需要对请求进行处理。(当然,由于时差影响,我访问的时候并没有被拒绝)
下面介绍定制请求头,
import requests
b = {"user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko)" \" Chrome/85.0.4170.0 Safari/537.36 Edg/85.0.552.1"}
url = "https://www.amazon.cn/dp/B013JV3G2K/ref=sr_1_1?__mk_zh_CN=%E4%BA%9A%E9%A9%AC%E9%80%8A%E"\"7%BD%91%E7%AB%99&crid=3DYCPY7I9J9S7&keywords=%E9%B2%81%E8%BF%85%E5%85%A8%E9%9B%86&qid=1"\"593834844&sprefix=%E9%B2%81%E8%BF%85%2Caps%2C173&sr=8-1"
r = requests.get(url,headers = b)
print(r.text)
(2)方法:定制请求头
这个user-agent是指用户代理,下面我们介绍如何定制请求头:
请求头Headers提供了关于请求、响应或其他发送实体的信息。对于爬虫而言,请求头十分重要,尽管上述示例没有指定请求头。如果没有指定请求头或者请求的请求头和实际网页不一致,就可能无法返回正确是结果。
requests并不会基于定制的请求头Headers的具体情况改变自己的行为,只是在最后的请求中,所有的请求头信息都会被传递进去。
下面介绍如何找到Headers:
1、使用浏览器的检查(开发者模式)
2、打开网络(Network),刷新页面,找到需要请求的页面
3、单击请求的页面(如果只是找用户代理,可任意选取一个)
4、在标头下面找到“请求标头”,就可以看到用户代理
3、向百度提交关键词
import requests
a = {"wd":"Python"}#创建一个键值对用作提交对象
r = requests.get("http://www.baidu.com/s", params= a)
print(r.status_code)
print(r.request.url)
print(len(r.text))
200
http://www.baidu.com/s?wd=Python
349937
查看字符串长度我们就可以看到响应的内容非常多,就不必将其打印。类似的,这里直接给出360搜索实例
4、网络爬取图片及存储
path:存储路径
5、IP地址归属地的自动查询
原理:利用URL接口,向网页提交一个IP地址
单元四 Beautiful Soup库入门
1、Beautiful Soup库的基本元素
(1)Beautiful Soup库的理解
(2)Beautiful Soup库的引用
注意Beautiful Soup中大小写
Beautiful Soup类就是bs4中的一个类
(3)Beautiful Soup库解析器
上面就是使用HTML解析器
这些将在接下来的内容将。
2、基于bs4库的HTML格式化和编码
下面看一下HTML解析样式:
import requests
from bs4 import BeautifulSoup
r = requests.get("https://www.bilibili.com/")
soup = BeautifulSoup(r.text,"html.parser")
b = soup.prettify()
print(b)
3、基于bs4库的HTML内容遍历方法
(1)HTML基本格式
HTML的基本格式就是成对的标签
(2)标签树的三种遍历方式
<1>下行遍历
import requests
from bs4 import BeautifulSoup
r = requests.get("https://www.bilibili.com/")
soup = BeautifulSoup(r.text,"html.parser")
b = soup.head
print(b)
c = b.contents
print(c)
要想达到遍历,利用循环即可
<2>上行遍历
<3>平行遍历
需要注意,平行遍历发生在同一父节点的各节点间,同时,我们不能直接认为平行遍历返回的下一个节点就是标签类型。
<4>总结
注意,如果遍历中使用的方法需要迭代,那么就只能用for循环来完成遍历。
单元五 信息组织与提取方法
1、基于bs4库的HTML内容查找方法
(1)<>.find_all方法
import requests
from bs4 import BeautifulSoup
r = requests.get("https://www.bilibili.com/")
soup = BeautifulSoup(r.text,"html.parser")
for tag in soup.find_all(True):#显示suop所有标签头print(tag.name)
(2)其他方法
2、三种信息标记形式
(1)三种信息标记形式介绍与实例
实例:
(2)三种信息标记形式的比较
3、信息标记的三种形式
(1)信息标记
(2)HTML信息标记
(3)XML信息标记
XML就是由HTML发展来的通用信息标记形式
(4)JSON信息标记
注意,组织信息时,键值对都需要双引号包裹,只有值为数值可以不用。
(5)YAML信息标记
4、信息提取的一般方法
(1)信息标记的两种方法及混用
(2)实例
实例1:中国大学排名爬取
(1)实例介绍
(2)功能描述
(3)网页分析
以最好大学网为例:
http://www.zuihaodaxue.com/zuihaodaxuepaiming2020.html
首先查看该网页的robots协议,返现该网页不存在,也就是无限制:
接下来我们简要分析定向的可行性,找到我们想要获取的内容:
1、使用浏览器的检查
2、查看网络,使用搜索,输入关键字“清华”,找到其所在位置
我们可以看到旁边的行数,确定其在源代码中的位置,接下来找到其在源代码中所处的位置:
可以看到其在中的中的中
在源代码页面可以使用快捷键ctrl+f,可以调出搜索框,也可以通过这种方式进行查到位置
(4)结构设计
我们可以看到这些内容是二维数据,可以用列表进行存储
(5)实例代码
import requests
from bs4 import BeautifulSoup
import bs4def getHTMLText(url):#将url信息爬取,将其中html页面返回try:r = requests.get(url, timeout = 30)r.raise_for_status()r.encoding = "utf-8"return r.textexcept:return "访问异常"def fullUnivList(ulist, html):#提取html中关键数据并存储soup = BeautifulSoup(html, "html.parser")for tr in soup.find("tbody").children:#获取<tbody>下所有子类<tr>if isinstance(tr, bs4.element.Tag):#检验<tr>标签下内容的类型是否为bs4库定义的Tag类型,否,则直接过滤tds = tr("td")#所有<tr>已经解析,下面就需要接受其下的<td>中的内容ulist.append([tds[0].string, tds[1].string, tds[2].string])#将获取的内容def printUnivList(ulist, num):print("{:^6}\t{:^10}\t{:^6}".format("排名","学校名称","总分"))#这里对输出格式进行规定,{:^6}表示取6位正中对齐,\t添加一个制表符,详情下面附有链接for i in range(num):u = ulist[i]print("{:^6}\t{:^10}\t{:^6}".format(u[0], u[1], u[2]))def main():unifo = []url1 = "http://www.zuihaodaxue.com/zuihaodaxuepaiming2020.html"html = getHTMLText(url1)fullUnivList(unifo, html)printUnivList(unifo, 20)main()
下面就是输出的结果:
(6)实例优化:中文对齐问题
关于.format的用法 .
我们可以看到上面结果,中文并不是完全居中对齐,当中文不够,系统会用西文字符填充,而中西文的空格占位不同,这就会导致中文对齐问题
解决方法:
采用中文字符的空格填充chr(12288)
def printUnivList(ulist, num):tplt = "{0:^6}\t{1:^10}\t{2:^6}"#制定输出规则print(tplt.format("排名","学校名称","总分",chr(12288)))#替换for i in range(num):u = ulist[i]print(tplt.format(u[0], u[1], u[2]))
单元六 Re(正则表达式)库入门
1、正则表达式的概念
(1)正则表达式概念及实例
(2)正则表达式功能
由上述例子,我们可以看出正则表达式可以将一段复杂的内容简洁地表达,除此之外,正则表达式还具有以下功能:
(3)正则表达式的主要用途
正则表达式常用在字符串匹配,在使用正则表达式时,我们需要进行编译,
2、正则表达式的语法
(1)基本语法
(2)常用操作符
注意:{ }的扩展只针对其前的一个字符
(3)语法实例
这里的第一个实例,其效果和去掉 ? 一样,这里涉及最小匹配,将在后面解释
import re
a = "pyyn"
m = re.search(r"p(y|yt|yth|ytho)n",a)
n = re.search(r"p(y|yt|yth|ytho)?n",a)
print(m,"\n",n)
返回结果都是None
(4)经典实例
3、Re库的基本使用
(1)正则表达式的表示类型
原生字符串就是在字符串前面加一个“r”,注意,原生字符串中不包含转义字符,因此在使用正则表达式需要用到转义字符时,最好使用原生字符串。
(2)Re库的6个主要功能函数
下面就一一解释:
import re
a = "pyn"
m = re.search(r"p(y|yt|yth|ytho)n",a)
print(m)
print(m.group())
<re.Match object; span=(0, 3), match=‘pyn’>
pyn
可以看到,这里调用.group直接输出匹配结果,但是要注意一点,如果没有匹配到结果,那么就会返回空值,此时用group就会返回异常,因此在使用时,为了避免错误,就需要处理异常。
这个函数是将匹配到的结果去掉,返回一个列表,可使用maxsplit参数进行分割
import re
m = re.split(r"[1-9]\d{4}","cmf10086 dli10084")
n = re.split(r"[1-9]\d{4}","cmf10086 dli10084",maxsplit=1)
print(m)
print(n)
[‘cmf’, ’ dli’, ‘’]
[‘cmf’, ’ dli10084’]
注意,这个函数在引用时需要用for循环操作
import re
for m in re.finditer(r"[1-9]\d{4}","cmf10086 dli10084"):if m:print(m.group(0))
10086
10084
(3)面向对象的调用方法
我们还可以将对象单独存储,这样我们就可以重复调用已知对象并重复操作
我们还可以将正则表达式编译成正则表达式对象,这样就可以重复调用这样正则表达式,那么在使用时,就不需要再规定pattern和flags这两个参数了。
4、Re库的Match对象
(1)Macth对象的属性
(2)Macth对象的方法
(3)Re库的贪婪匹配和最小匹配
实例2 某宝商品比价定向爬虫(略)
本文不涉及该部分,完成此内容需要获取登录接口链接并验证身份
实例3 股票数据定向爬虫(略)
单元七 Scrapy爬虫框架
1、Scrapy爬虫框架介绍
(1)爬虫框架
(2)Scrapy爬虫框架图示
Scrapy爬虫框架有7个模块
其中,engine、downloader、scheduler(调度器)是已有的,用户需要编写spiders、item pipelines(配置)模块。
(3)Scrapy爬虫框架解析
Engine>>>
控制所有模块之间的数据流
根据条件触发事件
Downloader>>>
根据请求下载网页
Scheduler>>>
对所有爬虫请求进行调度
这三者是不需要用户进行修改,但是这三者间有一个中间键,用于用户可控制的配置:
Spider>>>
解析Downloader返回的响应(Reponse)
产生爬取项(scraped item)
产生额外的爬取请求(Request)
Item Pipelines>>>
以流水线方式处理Spider产生的爬取项
由一组操作顺序组成,类似流水线,每个操作是一个Item Pipelines类型
可能操作包括:清理、检验和查重爬取项中的HTML数据、将数据存储到数据库
这两个模块需要用户进行编写,另外,这这两者之间还有一个中间键:
2、Scrapy爬虫的常用命令
(1)Scrapy命令行格式
(2)Scrapy常用命令
(2)Scrapy爬虫命令行逻辑
3、requests库和Scrapy爬虫的比较
(1)相同点
(2)不同点
(3)选取建议
单元八 Scrapy爬虫的基本使用
1、使用介绍
(1)使用步骤
(2) Scrapy爬虫的三种数据类型
request类主要的属性或方法:
response类主要的属性和方法:
(2) Scrapy爬虫提取信息的方法
Scrapy爬虫支持多种HTML提取信息的方法:
Beatuiful Soup
lxml
re
Xpath Selector
CSS Selector
2、yield关键字的使用
(1)生成器
(2)实例
输出小于n的数的平方数
def gen(n):for i in range(n):yield i**2for i in gen(5):print(i)for i in gen(6):print(i," ",end="")
0
1
4
9
16
0 1 4 9 16 25
另外,我们还可以找到取值范围,定义一个列表返回这些数值,然后直接使用平方函数求值即可。
既然有可以直接求,为什么还需要生成器?
(3)生成器的优势
生成器相比于一次性列出所有可能的优势
1、节省存储空间
2、响应更迅速
3、使用更灵活
当上述实例取n=1M,那么我们还需要定义一个包含0-1M的列表。在爬虫使用时,我们可能需要访问很多内容时,我们就可以使用生成器,
3、简单实例
演示网址
http://python123.io/ws/demo.html
文件名:demo.html
(1)建立一个Scrapy爬虫工程(pycharm)
博主使用的是pycharm,下面就介绍,使用pycharm的Terminal终端创建一个Scrapy项目
先试试第二行直接创建,如果没有成功,再执行第一行步骤
( File -> Setting -> Tools -> Shell path -> 将其修改成本机的cmd位置)
Terminal >>> scrapy startproject ____【name】
Terminal终端的位置如图所示:(pycharm左下角)
看到如下信息即为创建成功:
New Scrapy project 'test_scrapy', using template directory 'e:\\Anaconda3\\lib\\site-packages\\scrapy\\templates\\project', created in:G:\PycharmProjects\scrapy\test_scrapyYou can start your first spider with:cd test_scrapyscrapy genspider example example.com
工程目录
(2)生成一个爬虫
依然是在Terminal终端完成
>cd getdemo #在当前工程下执行你的工程(getdemo即为我的工程名)
>getdemo>scrapy genspider demo python123.io
#给定名称和爬取网址
结果如下:
Created spider ‘demo’ using template ‘basic’ in module:
getdemo.spiders.demo
在getdemo的工程下生成了一个爬虫,名为demo
当然,我们还可以手动生成,下面我们看一下这个爬虫的内容
import scrapyclass DemoSpider(scrapy.Spider): #scrapy.Spider的子类name = 'demo'allowed_domains = ['python123.io'] #指定爬虫爬取的网址,只能爬取这个域名以下的链接start_urls = ['http://python123.io/'] #需要爬取页面的初始内容def parse(self, response): #解析页面的空方法,parse()用于处理响应,解析内容形成字典,发现新的url爬取请求pass
(3)配置产生的爬虫
import scrapyclass DemoSpider(scrapy.Spider):name = 'demo'#allowed_domains = ['python123.io']start_urls = ["https://python123.io/ws/demo.html"]def parse(self, response):fname = response.url.split("/")[-1] #从响应的url中提取文件名作为保存本地的文件名with open(fname, "wb") as f: #将保存的内容存储f.write(response.body)self.log("Saved file %s." % fname)
(4)运行爬虫获取网页
>cd getdemo #调用getdemo
>\getdemo>scrapy crawl demo #使用crawl命令执行demo
2020-07-06 22:47:48 [scrapy.core.engine] INFO: Spider closed (finished)
最后就可以在看到getdemo的子目录中看到这个html文件
(5)爬虫文件
可以看到,完整版本的爬虫文件中使用了生成器,当需要访问的url很多时,这是就需要考虑使用生成器了。
实例四 股票数据Scrapy爬虫
实例涉及到百度股票(已下架),只拓展Pipelines的编写
配置 Pipelines.py文件
通过配置文件,让框架找到我们新定义的类,并且用这个类处理Item提出的相关信息;
同时,我们话可以继续定义对爬取项(Scraped Item)的处理类以及其他函数,完善其功能;
最后,我们找到ITEM_PIPELINES,并将我们定义类的注释效果去掉。
附页—— 开发工具选择
python开发工具可分为两类,如下:
python自带的IDLE包括交互式和文本式两种编译器
如若内容造成侵权/违法违规/事实不符,请联系编程学习网邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
相关文章
- vue打包部署axios跨域问题
工具版本: 【vue -V】:2.9.6 ide工具:VSCode / Idea 前提:我们前端vue工程需要单独部署 一、本地使用命令运行跨域问题。 外网访问的地址:https://www.runoob.com/try/ajax/json_demo.json 本地springboot接口访问的地址:http://192.168.3.12:8081/register/getSmsCode/1…...
2024/4/23 5:06:25 - 【7.6笔记】Java原理、JDK安装及环境变量(youzi)
当当当当!每日学习笔记(7.6)开始了 基本上所有编程结果: B/S:Browser(浏览器)/Server(服务器) C/S:Client(客户端)/Sever 开发语言的分类: 汇编 编译型语言(高级语言) 解释性语言(边运行,边解释) JDK安装及环境变量: 1.首先可以在网上先下载JDK符合自己电脑版…...
2024/4/19 20:20:58 - python项目之世界杯八强连连看
世界杯八强连连看 程序说明 游戏主程序的文件名称为WorldCupTop8.py,通过该项目,你可以巩固Python列表(list)的相关知识,同时了解鼠标点击事件及功能。 通过该项目你可以获得以下能力: l 进一步熟悉如何在程序中使用列表(list) l 掌握利用鼠标点击事件实现物体操作的…...
2024/5/3 9:33:27 - Linux中redis安装及软件安装相关Linux知识要点
无论是Linux还是windows安装软件,都要先有一个安装包。这个安装包可以是直接本机下载,也可以是从其他机器传过来。 在Linux中软件安装方式也有多种,我目前知道了就有yum安装、直接本机下载安装包安装以及他机传递安装包进行安装,这些方式可能常常会搭配着使用,哪个方便用哪…...
2024/4/26 19:45:19 - 上传第一个个人github项目总结(基于QT TLE下载工具)
BIOSMode 2020-06-14 17:42:51 本人在2020-06-14凌晨完成了一个基于QT的TLE下载、合并及分析时间的带界面工具,萌生了想要把该项目上传github开源的想法。 其中还是遇到了一些问题,将问题与解决方式记录下来以自省或给他人一些便利。 开发环境:windows10 + QT5.9.9 + MSVC2…...
2024/4/17 13:35:27 - 吴恩达深度学习——循环神经网络
文章目录引言序列模型能解决什么问题符号定义循环神经网络穿越时光反向传播不同类型的循环神经网络语言模型和序列生成对新序列采样RNN的梯度消失问题GRU单元长短记忆网络(LSTM)双向RNN神经网络深层RNN参考 引言 本文是吴恩达深度学习第五课:序列模型。本次课程将会学到如何为…...
2024/4/25 10:23:39 - 数据结构 4 字符匹配-KMP算法
第四章主要介绍的是串,但是串的实现没什么必要,最重要的知识点在于KMP算法的使用,大二时数据结构总结过一次KMP算法,连接如下: https://blog.csdn.net/weixin_43849505/article/details/88990526 在此基础上补充一下新的理解,这个算法真的很抽象,有些地方确实表达不清楚…...
2024/4/20 13:33:29 - Web开发必要软件安装(Windows10)(附安装包)
Web开发必要软件安装Java安装包下载环境变量配置验证IEDA下载安装基本配置DBeaver下载并安装Git下载并安装GitHubDesktop下载并安装安装包 搜索引擎推荐:百度、being Java 安装包下载点击Red Hat Developer,登录账号并下载解压安装包,复制文件的路径。环境变量配置Windows +…...
2024/5/3 6:47:49 - 学习JavaEE知识点总结
javaEEServlet概念介绍工作模式介绍API及类型介绍接口的具体使用和方法(Servlet接口)生命周期inti()service()destory()Servlet本身生命周期HttpServlet接口的方法介绍ServicedoGetdoPost常见错误状态码原因及解决HttpServletRequest和HttpServletResponseRequest对象生…...
2024/4/30 17:49:34 - 使用Python爬取全球新冠肺炎疫情数据
使用Python爬取全球新冠肺炎疫情数据导入所需库包获取实时数据的url正式编写程序 导入所需库包 在获取数据之前,我们需要先安装好所需的包requests和pandas: 1.如果是使用pycharm可以直接使用File->Settings->Project->Project Interpreter->选择“+”->在搜索…...
2024/4/16 8:34:16 - 5、OpenGL - 渲染基础
OpenGL 渲染的基础大纲:1、CPU 和 GPU 2、计算机渲染原理 3、屏幕成像与卡顿情况1、CPU 和 GPU1.1、CPU(Central Processing Unit)现代计算机整个系统的运算核心、控制核心。 处理依赖性非常高的事情 Control控制单元、ALU有一部分运算单元、Cache显存1.2、GPU(Graphics Pr…...
2024/4/26 22:34:37 - Filter和Listener
Filter和ListenerFilter基本概念快速入门过滤器细节web.xml配置过滤器执行流程生命周期方法配置详解拦截方式配置过滤器链(配置多个过滤器)Listener概念ServletContextListener方法实现步骤 Filter 基本概念 当访问服务器的资源时, 过滤器可以将请求拦截下来, 完成一些特殊的功…...
2024/4/24 21:47:52 - Professional Android 4th个人学习分享(渣英语水平附原文和源代码)(一)
Hello,Android安卓程序的发展一点背景不遥远的历史展望未来安卓生态 安卓程序的发展 你可能是一位有经验的移动开发工程师,一个桌面或网页开发者,或者一个完全初出茅庐的编程新手,安卓提供了一个有趣的机会去写下为千百万安卓用户(audience听众)服务的应用 你可能对安卓已…...
2024/4/26 18:16:44 - 存储过程的使用(三)使用DECLARE定义局部变量
使用DECLARE定义局部变量在流程语句的分析中,我们在存储过程中使用变量的声明与设置,由于这些变量也只能在存储过程中使用,因此也称为局部变量,变量的声明可以使用以下语法:DECLARE 变量名[,变量名2...] 数据类型(type) [DEFAULT value];DECLARE num INT DEFAULT 10 ;-…...
2024/4/18 17:15:31 - F5 BIG-IP RCE(CVE-2020-5902) 漏洞利用
F5 BIG-IP 远程代码执行漏洞(CVE-2020-5902) 漏洞利用0x01 漏洞详情 最近各大平台都在推送F5 BIG-IP 远程代码执行漏洞。漏洞编号为CVE-2020-5902。 BIG-IP ADC广泛应用于大型企业,数据中心、云计算平台中,可以实现应用加速、负载均衡、SLL过载、web应用防火墙等功能。 未认…...
2024/4/25 8:21:26 - NLP-task5
基于预测的词向量 目前,基于预测的词向量是最流行的,比如word2vec。现在我们来探索word2vec生成的词向量。这一部分主要是使用gensim探索词向量,不是自己实现word2vec,所使用的词向量维度是300,由google发布。 # 导入包 import sys assert sys.version_info[0]==3 assert …...
2024/5/7 19:45:45 - JavaWeb综合旅游网项目
本示例为JavaWeb前后端结合综合示例,供各位平时参考练习使用,功能不断完善中,之后可直接部署在服务器,文末会给出源码链接。使用Maven来构建项目,使用时直接导入pom.xml,运行命令:tomcat7:run<?xml version="1.0" encoding="UTF-8"?><pr…...
2024/4/29 6:41:25 - 程序人生 - 还在跑网点开通按月转账?网上都能办啦!
你知道吗?现在“个人网厅”不仅能开通纯公积金贷款的还贷提取按月转账业务,自本月起,按月转账办理类型还增加受理商业贷款、组合贷款、省直公积金贷款及组合贷款的按月转账在线办理。1、首页选择服务大厅登录中心官网(http://gjj.hangzhou.gov.cn)→首页选择“服务大厅”→…...
2024/4/28 12:25:07 - 【cs224n学习作业】Assignment 1 - Exploring Word Vectors
参考【cs224n学习作业】Assignment 1 CS224N课程的第一个大作业, 主要是对词向量做了一个探索, 并直观的感受了一下词嵌入或者词向量的效果。这里简单的记录一下我探索的一个过程。分为两部分, 第一部分是基于计数的单词词向量, 而第二部分,是基于词向量的预测, 是利用了…...
2024/4/28 15:52:40 - Swagger学习总结文档
SwaggerRestful API 文档在线自动生成工具;API文档与API定义同步更新 直接运行,可以在线测试API接口,接口文档实时更新 支持多种语言 可以通过Swagger给一些比较难理解的属性或接口增加注释信息官网 使用 项目使用需要springbox;swagger2 uiSpring Boot继承Swagger 以下内容代码…...
2024/4/28 1:52:23
最新文章
- OpenHarmony 实战开发 - 如何在源码中编译复杂应用(4.0-Release)
文档环境 开发环境:Windows 11 编译环境:Ubuntu 22.04 开发板型号:DAYU 200(RK3568) 系统版本:OpenHarmony-4.0-Release 功能简介 在 OpenHarmony 系统中预安装应用的 hap 包会随系统编译打包到镜像中&a…...
2024/5/8 21:24:40 - 梯度消失和梯度爆炸的一些处理方法
在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言,在此感激不尽。 权重和梯度的更新公式如下: w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...
2024/5/7 10:36:02 - Redis分区
Redis分区是一种数据分片技术,用于将数据分布到多个Redis实例(节点)上以提高性能和扩展性。分区使得Redis能够处理比单个实例更大的数据集,并允许并行处理客户端请求。 原理: Redis分区通过一致性哈希算法(…...
2024/5/5 1:23:35 - ps教程谁教的好
在Photoshop(PS)教程方面,有多位老师被推荐为教学水平较高。以下是一些被提及的老师: 敬伟:被认为是很多人的PS启蒙老师,提供基本功能介绍与高级效果案例,教学风格被认为是免费且不拖沓的。1…...
2024/5/6 13:28:04 - 【外汇早评】美通胀数据走低,美元调整
原标题:【外汇早评】美通胀数据走低,美元调整昨日美国方面公布了新一期的核心PCE物价指数数据,同比增长1.6%,低于前值和预期值的1.7%,距离美联储的通胀目标2%继续走低,通胀压力较低,且此前美国一季度GDP初值中的消费部分下滑明显,因此市场对美联储后续更可能降息的政策…...
2024/5/8 6:01:22 - 【原油贵金属周评】原油多头拥挤,价格调整
原标题:【原油贵金属周评】原油多头拥挤,价格调整本周国际劳动节,我们喜迎四天假期,但是整个金融市场确实流动性充沛,大事频发,各个商品波动剧烈。美国方面,在本周四凌晨公布5月份的利率决议和新闻发布会,维持联邦基金利率在2.25%-2.50%不变,符合市场预期。同时美联储…...
2024/5/7 9:45:25 - 【外汇周评】靓丽非农不及疲软通胀影响
原标题:【外汇周评】靓丽非农不及疲软通胀影响在刚结束的周五,美国方面公布了新一期的非农就业数据,大幅好于前值和预期,新增就业重新回到20万以上。具体数据: 美国4月非农就业人口变动 26.3万人,预期 19万人,前值 19.6万人。 美国4月失业率 3.6%,预期 3.8%,前值 3…...
2024/5/4 23:54:56 - 【原油贵金属早评】库存继续增加,油价收跌
原标题:【原油贵金属早评】库存继续增加,油价收跌周三清晨公布美国当周API原油库存数据,上周原油库存增加281万桶至4.692亿桶,增幅超过预期的74.4万桶。且有消息人士称,沙特阿美据悉将于6月向亚洲炼油厂额外出售更多原油,印度炼油商预计将每日获得至多20万桶的额外原油供…...
2024/5/7 14:25:14 - 【外汇早评】日本央行会议纪要不改日元强势
原标题:【外汇早评】日本央行会议纪要不改日元强势近两日日元大幅走强与近期市场风险情绪上升,避险资金回流日元有关,也与前一段时间的美日贸易谈判给日本缓冲期,日本方面对汇率问题也避免继续贬值有关。虽然今日早间日本央行公布的利率会议纪要仍然是支持宽松政策,但这符…...
2024/5/4 23:54:56 - 【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响
原标题:【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响近日伊朗局势升温,导致市场担忧影响原油供给,油价试图反弹。此时OPEC表态稳定市场。据消息人士透露,沙特6月石油出口料将低于700万桶/日,沙特已经收到石油消费国提出的6月份扩大出口的“适度要求”,沙特将满…...
2024/5/4 23:55:05 - 【外汇早评】美欲与伊朗重谈协议
原标题:【外汇早评】美欲与伊朗重谈协议美国对伊朗的制裁遭到伊朗的抗议,昨日伊朗方面提出将部分退出伊核协议。而此行为又遭到欧洲方面对伊朗的谴责和警告,伊朗外长昨日回应称,欧洲国家履行它们的义务,伊核协议就能保证存续。据传闻伊朗的导弹已经对准了以色列和美国的航…...
2024/5/4 23:54:56 - 【原油贵金属早评】波动率飙升,市场情绪动荡
原标题:【原油贵金属早评】波动率飙升,市场情绪动荡因中美贸易谈判不安情绪影响,金融市场各资产品种出现明显的波动。随着美国与中方开启第十一轮谈判之际,美国按照既定计划向中国2000亿商品征收25%的关税,市场情绪有所平复,已经开始接受这一事实。虽然波动率-恐慌指数VI…...
2024/5/7 11:36:39 - 【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试
原标题:【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试美国和伊朗的局势继续升温,市场风险情绪上升,避险黄金有向上突破阻力的迹象。原油方面稍显平稳,近期美国和OPEC加大供给及市场需求回落的影响,伊朗局势并未推升油价走强。近期中美贸易谈判摩擦再度升级,美国对中…...
2024/5/4 23:54:56 - 【原油贵金属早评】市场情绪继续恶化,黄金上破
原标题:【原油贵金属早评】市场情绪继续恶化,黄金上破周初中国针对于美国加征关税的进行的反制措施引发市场情绪的大幅波动,人民币汇率出现大幅的贬值动能,金融市场受到非常明显的冲击。尤其是波动率起来之后,对于股市的表现尤其不安。隔夜美国股市出现明显的下行走势,这…...
2024/5/6 1:40:42 - 【外汇早评】美伊僵持,风险情绪继续升温
原标题:【外汇早评】美伊僵持,风险情绪继续升温昨日沙特两艘油轮再次发生爆炸事件,导致波斯湾局势进一步恶化,市场担忧美伊可能会出现摩擦生火,避险品种获得支撑,黄金和日元大幅走强。美指受中美贸易问题影响而在低位震荡。继5月12日,四艘商船在阿联酋领海附近的阿曼湾、…...
2024/5/4 23:54:56 - 【原油贵金属早评】贸易冲突导致需求低迷,油价弱势
原标题:【原油贵金属早评】贸易冲突导致需求低迷,油价弱势近日虽然伊朗局势升温,中东地区几起油船被袭击事件影响,但油价并未走高,而是出于调整结构中。由于市场预期局势失控的可能性较低,而中美贸易问题导致的全球经济衰退风险更大,需求会持续低迷,因此油价调整压力较…...
2024/5/8 20:48:49 - 氧生福地 玩美北湖(上)——为时光守候两千年
原标题:氧生福地 玩美北湖(上)——为时光守候两千年一次说走就走的旅行,只有一张高铁票的距离~ 所以,湖南郴州,我来了~ 从广州南站出发,一个半小时就到达郴州西站了。在动车上,同时改票的南风兄和我居然被分到了一个车厢,所以一路非常愉快地聊了过来。 挺好,最起…...
2024/5/7 9:26:26 - 氧生福地 玩美北湖(中)——永春梯田里的美与鲜
原标题:氧生福地 玩美北湖(中)——永春梯田里的美与鲜一觉醒来,因为大家太爱“美”照,在柳毅山庄去寻找龙女而错过了早餐时间。近十点,向导坏坏还是带着饥肠辘辘的我们去吃郴州最富有盛名的“鱼头粉”。说这是“十二分推荐”,到郴州必吃的美食之一。 哇塞!那个味美香甜…...
2024/5/4 23:54:56 - 氧生福地 玩美北湖(下)——奔跑吧骚年!
原标题:氧生福地 玩美北湖(下)——奔跑吧骚年!让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 啊……啊……啊 两…...
2024/5/8 19:33:07 - 扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!
原标题:扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!扒开伪装医用面膜,翻六倍价格宰客!当行业里的某一品项火爆了,就会有很多商家蹭热度,装逼忽悠,最近火爆朋友圈的医用面膜,被沾上了污点,到底怎么回事呢? “比普通面膜安全、效果好!痘痘、痘印、敏感肌都能用…...
2024/5/5 8:13:33 - 「发现」铁皮石斛仙草之神奇功效用于医用面膜
原标题:「发现」铁皮石斛仙草之神奇功效用于医用面膜丽彦妆铁皮石斛医用面膜|石斛多糖无菌修护补水贴19大优势: 1、铁皮石斛:自唐宋以来,一直被列为皇室贡品,铁皮石斛生于海拔1600米的悬崖峭壁之上,繁殖力差,产量极低,所以古代仅供皇室、贵族享用 2、铁皮石斛自古民间…...
2024/5/8 20:38:49 - 丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者
原标题:丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者【公司简介】 广州华彬企业隶属香港华彬集团有限公司,专注美业21年,其旗下品牌: 「圣茵美」私密荷尔蒙抗衰,产后修复 「圣仪轩」私密荷尔蒙抗衰,产后修复 「花茵莳」私密荷尔蒙抗衰,产后修复 「丽彦妆」专注医学护…...
2024/5/4 23:54:58 - 广州械字号面膜生产厂家OEM/ODM4项须知!
原标题:广州械字号面膜生产厂家OEM/ODM4项须知!广州械字号面膜生产厂家OEM/ODM流程及注意事项解读: 械字号医用面膜,其实在我国并没有严格的定义,通常我们说的医美面膜指的应该是一种「医用敷料」,也就是说,医用面膜其实算作「医疗器械」的一种,又称「医用冷敷贴」。 …...
2024/5/6 21:42:42 - 械字号医用眼膜缓解用眼过度到底有无作用?
原标题:械字号医用眼膜缓解用眼过度到底有无作用?医用眼膜/械字号眼膜/医用冷敷眼贴 凝胶层为亲水高分子材料,含70%以上的水分。体表皮肤温度传导到本产品的凝胶层,热量被凝胶内水分子吸收,通过水分的蒸发带走大量的热量,可迅速地降低体表皮肤局部温度,减轻局部皮肤的灼…...
2024/5/4 23:54:56 - 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...
解析如下:1、长按电脑电源键直至关机,然后再按一次电源健重启电脑,按F8健进入安全模式2、安全模式下进入Windows系统桌面后,按住“winR”打开运行窗口,输入“services.msc”打开服务设置3、在服务界面,选中…...
2022/11/19 21:17:18 - 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。
%读入6幅图像(每一幅图像的大小是564*564) f1 imread(WashingtonDC_Band1_564.tif); subplot(3,2,1),imshow(f1); f2 imread(WashingtonDC_Band2_564.tif); subplot(3,2,2),imshow(f2); f3 imread(WashingtonDC_Band3_564.tif); subplot(3,2,3),imsho…...
2022/11/19 21:17:16 - 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...
win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面,在等待界面中我们需要等待操作结束才能关机,虽然这比较麻烦,但是对系统进行配置和升级…...
2022/11/19 21:17:15 - 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...
有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows,请勿关闭计算机”的提示,要过很久才能进入系统,有的用户甚至几个小时也无法进入,下面就教大家这个问题的解决方法。第一种方法:我们首先在左下角的“开始…...
2022/11/19 21:17:14 - win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...
置信有很多用户都跟小编一样遇到过这样的问题,电脑时发现开机屏幕显现“正在配置Windows Update,请勿关机”(如下图所示),而且还需求等大约5分钟才干进入系统。这是怎样回事呢?一切都是正常操作的,为什么开时机呈现“正…...
2022/11/19 21:17:13 - 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...
Win7系统开机启动时总是出现“配置Windows请勿关机”的提示,没过几秒后电脑自动重启,每次开机都这样无法进入系统,此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一:开机按下F8,在出现的Windows高级启动选…...
2022/11/19 21:17:12 - 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...
有不少windows10系统用户反映说碰到这样一个情况,就是电脑提示正在准备windows请勿关闭计算机,碰到这样的问题该怎么解决呢,现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法:1、2、依次…...
2022/11/19 21:17:11 - 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...
今天和大家分享一下win7系统重装了Win7旗舰版系统后,每次关机的时候桌面上都会显示一个“配置Windows Update的界面,提示请勿关闭计算机”,每次停留好几分钟才能正常关机,导致什么情况引起的呢?出现配置Windows Update…...
2022/11/19 21:17:10 - 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...
只能是等着,别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚,只能是考虑备份数据后重装系统了。解决来方案一:管理员运行cmd:net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...
2022/11/19 21:17:09 - 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?
原标题:电脑提示“配置Windows Update请勿关闭计算机”怎么办?win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢?一般的方…...
2022/11/19 21:17:08 - 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...
关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!关机提示 windows7 正在配…...
2022/11/19 21:17:05 - 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...
钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...
2022/11/19 21:17:05 - 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...
前几天班里有位学生电脑(windows 7系统)出问题了,具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面,长时间没反应,无法进入系统。这个问题原来帮其他同学也解决过,网上搜了不少资料&#x…...
2022/11/19 21:17:04 - 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...
本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法,并在最后教给你1种保护系统安全的好方法,一起来看看!电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中,添加了1个新功能在“磁…...
2022/11/19 21:17:03 - 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...
许多用户在长期不使用电脑的时候,开启电脑发现电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机。。.这要怎么办呢?下面小编就带着大家一起看看吧!如果能够正常进入系统,建议您暂时移…...
2022/11/19 21:17:02 - 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...
配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!配置windows update失败 还原更改 请勿关闭计算机&#x…...
2022/11/19 21:17:01 - 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...
不知道大家有没有遇到过这样的一个问题,就是我们的win7系统在关机的时候,总是喜欢显示“准备配置windows,请勿关机”这样的一个页面,没有什么大碍,但是如果一直等着的话就要两个小时甚至更久都关不了机,非常…...
2022/11/19 21:17:00 - 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...
当电脑出现正在准备配置windows请勿关闭计算机时,一般是您正对windows进行升级,但是这个要是长时间没有反应,我们不能再傻等下去了。可能是电脑出了别的问题了,来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...
2022/11/19 21:16:59 - 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...
我们使用电脑的过程中有时会遇到这种情况,当我们打开电脑之后,发现一直停留在一个界面:“配置Windows Update失败,还原更改请勿关闭计算机”,等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢࿰…...
2022/11/19 21:16:58 - 如何在iPhone上关闭“请勿打扰”
Apple’s “Do Not Disturb While Driving” is a potentially lifesaving iPhone feature, but it doesn’t always turn on automatically at the appropriate time. For example, you might be a passenger in a moving car, but your iPhone may think you’re the one dri…...
2022/11/19 21:16:57