首页
壁纸
留言
挚爱
友链
关于
更多
统计
Search
1
自动化推送每日60S新闻
58 阅读
2
我的开始
52 阅读
3
过来听会歌吧
49 阅读
4
天气每日推送
43 阅读
5
数据结构之队列
35 阅读
自动化
Java
计算机基础知识
数据结构
操作系统
计算机组成原理
计算机网络
typecho
无线电
就爱瞎折腾
其他
树洞
登录
Search
标签搜索
数据结构
自动化
计算机组成原理
树洞
typecho
网易云
音乐
折腾
存储系统
进制转换
编码
数值
MathJax
LaTeX
KaTeX
听歌
队列
青龙面板
冉冉升起的ShallGoing
累计撰写
20
篇文章
累计收到
1
条评论
首页
栏目
自动化
Java
计算机基础知识
数据结构
操作系统
计算机组成原理
计算机网络
typecho
无线电
就爱瞎折腾
其他
树洞
页面
壁纸
留言
挚爱
友链
关于
统计
搜索到
20
篇
shallgoing
发布的文章
2024-08-08
尝试解决Joe主题的网易云单首无法展示的问题
没有歌听,现在正在排查这个aplayer插件的问题作者集成的这个插件是指向韩小韩的一个接口,但是我今天去韩小韩的博客去看了一下,换成handsome的主题了,也就是说跟链接相关的网址api已经失效了,看到上面的图片已经404了。下一步找出原作者这个链接从哪里发出将其更改,或者我自己上传到服务器几首歌也可以。{dotted startColor="#ff6c6c" endColor="#1989fa"/}在这里标记一下相关的位置,等下次有精力和能力修改的时候再来修改。\Joe-master\assets\typecho\write\js里面的关于编辑器的一个集成。有这个相关的代码播放列表的方式是可以放的,因为走的其他的api也就是说歌单里面只放一首歌哎,技术不到家,好拉跨的解决方法请大家听一听热歌https://hywcraft.top/archives/193/未完待续
2024年08月08日
15 阅读
0 评论
0 点赞
2024-08-08
尝试解决typecho的文章未收录但却显示已收录的问题
{alert type="warning"}测试还在进行,还未成功{/alert}分析/* 查询是否收录 已测试 √ */ function _getRecord($self) { $self->response->setStatus(200); site=site = site=self->request->site; $encryption = md5(mt_rand(1655, 100860065) . time()); $baiduSite = "https://www.baidu.com/s?ie=utf-8&newi=1&mod=1&isid={$encryption}&wd={$site}&rsv_spt=1&rsv_iqid={$encryption}&issp=1&f=8&rsv_bp=1&rsv_idx=2&ie=utf-8&tn=baiduhome_pg&rsv_enter=0&rsv_dl=ib&rsv_sug3=2&rsv_sug1=1&rsv_sug7=001&rsv_n=2&rsv_btype=i&inputT=3083&rsv_sug4=3220&rsv_sug=9&rsv_sid=32818_1460_33042_33060_31660_33099_33101_32961_26350_22159&_ss=1&clist=&hsug=&f4s=1&csor=38&_cr1=32951"; $ip = mt_rand(0, 255) . '.' . mt_rand(0, 255) . '.' . mt_rand(0, 255) . '.' . mt_rand(0, 255); $header[] = "accept-encoding: gzip, deflate"; $header[] = "accept-language: en-US,en;q=0.8"; header[]="CLIENT−IP:".header[] = "CLIENT-IP:" . header[]="CLIENT−IP:".ip; header[]="X−FORWARDED−FOR:".header[] = "X-FORWARDED-FOR:" . header[]="X−FORWARDED−FOR:".ip; $header[] = "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9"; $ch = curl_init(); $ch = curl_init(); curl_setopt(ch,CURLOPTURL,ch, CURLOPT_URL, ch,CURLOPTURL,baiduSite); curl_setopt(ch,CURLOPTHTTPHEADER,ch, CURLOPT_HTTPHEADER, ch,CURLOPTHTTPHEADER,header); curl_setopt($ch, CURLOPT_REFERER, "https://www.baidu.com/s?ie=UTF-8&wd={$site}"); curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.79 Safari/537.36"); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_ENCODING, 'gzip,deflate'); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE); curl_setopt($ch, CURLOPT_TIMEOUT, 5); $output = curl_exec($ch); curl_close($ch); $res = str_replace([' ', "\n", "\r"], '', $output); if (strpos($res, "抱歉,没有找到与") || strpos($res, "找到相关结果约0个") || strpos($res, "没有找到该URL") || strpos($res, "抱歉没有找到")) { $self->response->throwJson(array("data" => "未收录")); } else { $self->response->throwJson(array("data" => "已收录")); } }这段代码是一个用于检查网站是否被百度收录的PHP函数 _getRecord。它通过模拟浏览器请求访问百度搜索页面,并解析返回的HTML内容来判断目标网站是否已经被百度收录。代码详解1. 函数声明和设置响应状态function _getRecord($self) { $self->response->setStatus(200);函数 _getRecord 接收一个参数 $self,通常是一个包含响应和请求相关信息的对象(可能是某个框架中的对象)。setStatus(200) 设置HTTP响应状态码为200,表示请求成功。2. 构造查询URL和请求头 $site = $self->request->site; $encryption = md5(mt_rand(1655, 100860065) . time()); $baiduSite = "https://www.baidu.com/s?ie=utf-8&newi=1&mod=1&isid={$encryption}&wd={$site}&rsv_spt=1&rsv_iqid={$encryption}&issp=1&f=8&rsv_bp=1&rsv_idx=2&ie=utf-8&tn=baiduhome_pg&rsv_enter=0&rsv_dl=ib&rsv_sug3=2&rsv_sug1=1&rsv_sug7=001&rsv_n=2&rsv_btype=i&inputT=3083&rsv_sug4=3220&rsv_sug=9&rsv_sid=32818_1460_33042_33060_31660_33099_33101_32961_26350_22159&_ss=1&clist=&hsug=&f4s=1&csor=38&_cr1=32951"; $ip = mt_rand(0, 255) . '.' . mt_rand(0, 255) . '.' . mt_rand(0, 255) . '.' . mt_rand(0, 255); $header[] = "accept-encoding: gzip, deflate"; $header[] = "accept-language: en-US,en;q=0.8"; $header[] = "CLIENT-IP:" . $ip; $header[] = "X-FORWARDED-FOR:" . $ip; $header[] = "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9";$site: 从请求对象 $self->request 中获取用户传递的站点URL,用于查询是否被收录。$encryption: 生成一个随机的MD5加密字符串,用于伪装请求的唯一性。$baiduSite: 拼接百度的查询URL,其中 wd={$site} 用于指定要查询的网站,其他参数用来模拟真实的搜索请求。$ip: 生成一个随机的IP地址,用于伪装请求的来源IP,防止被百度识别为机器请求。$header: 构造请求头,用于模拟真实用户的请求。包括 accept-encoding、accept-language、CLIENT-IP、X-FORWARDED-FOR 等字段。3. 初始化并发送CURL请求 $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $baiduSite); curl_setopt($ch, CURLOPT_HTTPHEADER, $header); curl_setopt($ch, CURLOPT_REFERER, "https://www.baidu.com/s?ie=UTF-8&wd={$site}"); curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.79 Safari/537.36"); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_ENCODING, 'gzip,deflate'); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE); curl_setopt($ch, CURLOPT_TIMEOUT, 5); $output = curl_exec($ch); curl_close($ch);curl_init(): 初始化CURL会话。curl_setopt($ch, CURLOPT_URL, $baiduSite): 设置CURL请求的URL为百度查询链接。curl_setopt($ch, CURLOPT_HTTPHEADER, $header): 设置请求头,模拟真实请求。curl_setopt($ch, CURLOPT_REFERER, ...): 设置请求的来源页面(即伪装成从百度搜索页面点击进入)。curl_setopt($ch, CURLOPT_USERAGENT, ...): 设置用户代理(浏览器标识),模拟真实用户。curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1): 设置为返回请求结果,而不是直接输出。curl_setopt($ch, CURLOPT_ENCODING, 'gzip,deflate'): 设置CURL自动解压Gzip或Deflate编码的内容。curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE): 禁用SSL证书验证(用于处理HTTPS请求)。curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE): 禁用SSL主机名验证。curl_setopt($ch, CURLOPT_TIMEOUT, 5): 设置请求超时时间为5秒。$output = curl_exec($ch): 执行CURL请求,并将返回的HTML内容赋值给 $output。curl_close($ch): 关闭CURL会话。4. 解析返回结果并判断是否收录 $res = str_replace([' ', "\n", "\r"], '', $output); if (strpos($res, "抱歉,没有找到与") || strpos($res, "找到相关结果约0个") || strpos($res, "没有找到该URL") || strpos($res, "抱歉没有找到")) { $self->response->throwJson(array("data" => "未收录")); } else { $self->response->throwJson(array("data" => "已收录")); } }$res = str_replace([' ', "\n", "\r'], '', $output);: 将返回的HTML内容中的空格、换行符和回车符去除,得到更干净的字符串,方便进行字符串匹配。if (strpos($res, ...) || ...): 检查返回的内容中是否包含以下字符串:"抱歉,没有找到与""找到相关结果约0个""没有找到该URL""抱歉没有找到"这些字符串通常表示百度未收录目标网站。$self->response->throwJson(array("data" => "未收录"));: 如果检测到上述字符串之一,则返回JSON格式的响应,表示网站未被收录。$self->response->throwJson(array("data" => "已收录"));: 否则,返回JSON响应,表示网站已被收录。从调试输出的信息来看,API 返回的内容是一个包含验证码的链接,而不是我们预期的搜索结果。具体的输出是:<a href="https://wappass.baidu.com/static/captcha/tuxing.html?...">Found</a>这个链接指向百度的图形验证码页面,说明百度检测到了我们的请求,并认为这可能是自动化行为,因此要求进行验证码验证。原因分析:百度为了防止滥用或频繁的自动化查询请求,使用了图形验证码来验证请求的真实性。我们的代码通过 cURL 发送请求,但是由于频繁或异常的访问模式,触发了百度的安全机制,导致你获取到的不是搜索结果,而是一个要求验证码验证的页面。解决方案:还没想到,再说吧
2024年08月08日
12 阅读
0 评论
0 点赞
2024-08-08
解决typecho搜索文章不显示关键字的bug✅
前言点击分类的时候不显示关键字“搜索到1篇与 的文章”还挺离谱。关键字不显示。一顿查找,找到搜索是在archive.php里面<span>搜索到</span> <span class="muted"><?php echo $this->getTotal(); ?></span> <span>篇与</span> <span class="muted ellipsis"><?php echo $this->_keywords; ?></span> <span>的结果</span>关键字是空的,再一顿翻看,搜索也是,解决问题<span>搜索到</span> <span class="muted"><?php echo $this->getTotal(); ?></span> <span>篇</span><span>搜索到</span>: 显示固定文本“搜索到”。<span class="muted"><?php echo $this->getTotal(); ?></span>: 显示搜索结果或文章的总数。$this->getTotal() 是一个方法,它返回当前文章列表的总数,使用 muted 类来控制这个数字的样式。<span>篇</span>: 显示固定文本“篇”,用于表示文章数量的单位。动态生成标题$sp = '<span class="muted ellipsis"> %s </span>'; $this->archiveTitle(array( 'category' => '分类为' . $sp . '的文章', 'search' => '包含关键字' . $sp . '的文章', 'tag' => '标签为' . $sp . '的文章', 'author' => $sp . '发布的文章' ), '', '');$sp: 定义一个格式化的字符串,其中包含两个类 muted 和 ellipsis,并在中间留有 %s 作为占位符,用于替换成分类名、关键词、标签名或作者名。$this->archiveTitle(...): 根据当前的归档类型(如分类、搜索、标签或作者)动态生成标题。'category' => '分类为'.$sp.'的文章': 如果是按分类查看文章,则生成类似“分类为 [分类名] 的文章”的标题。'search' => '包含关键字'.$sp.'的文章': 如果是搜索文章,则生成类似“包含关键字 [搜索词] 的文章”的标题。'tag' => '标签为'.$sp.'的文章': 如果是按标签查看文章,则生成类似“标签为 [标签名] 的文章”的标题。'author' => $sp.'发布的文章': 如果是按作者查看文章,则生成类似“[作者名] 发布的文章”的标题。用法示例假设你在某个分类页面上,用户选择了“科技”分类,这段代码将生成如下内容:<span>搜索到</span> <span class="muted">10</span> <span>篇</span> <span class="muted ellipsis"> 科技 </span>分类的文章在这个示例中,$this->getTotal() 返回了 10,表示在“科技”分类中共有10篇文章,最终会显示为“搜索到 10 篇 科技 分类的文章”。操作将<span>搜索到</span> <span class="muted"><?php echo $this->getTotal(); ?></span> <span>篇与</span> <span class="muted ellipsis"><?php echo $this->_keywords; ?></span> <span>的结果</span>替换成<span>搜索到</span> <span class="muted"><?php echo $this->getTotal(); ?></span> <span>篇</span> <?php $sp='<span class="muted ellipsis"> %s </span>'; $this->archiveTitle(array( 'category' => '分类为'.$sp.'的文章', 'search' => '包含关键字'.$sp.'的文章', 'tag' => '标签为'.$sp.'的文章', 'author' => $sp.'发布的文章') , '', '');muted: 可能会用较浅的颜色或更淡的文本颜色来显示数字和其他信息。ellipsis: 可能用于文本溢出时添加省略号,通常用于长标题的处理。快去试试吧。文章参考GitHub用户cnhongv的提交https://github.com/HaoOuBa/Joe/pull/91
2024年08月08日
13 阅读
0 评论
1 点赞
2024-08-05
尝试霍尼韦尔相变片7950的实际使用
前言近期电脑温度飙升,在空调房里也有惊人的80℃,然而才开了几个网页,前段时间尝试live port那个什么AI的项目,cpu温度飚的吓人,我想不至于吧,人作者说是主要用的N卡,加之前段时间清灰正好拆开了散热组件,这个硅脂就换了一下,正好手边有一个买什么东西送的硅脂,一小针管,拿来应付了一下。温度飙升我想了有三个原因:CPU不行(R7-5800H没这么拉垮吧)劣质硅脂的原因(买的东西很便宜,还送硅脂,能好哪去)风扇积灰(最没想过的事,还真是,堵了半边的风道出风口)操作今天到货了拆机拆散热模组清硅脂6月清灰才上的劣质硅脂,还是稀的,给我擦半天。拆风扇真的是惊喜连连,如图,风扇内部,出风口堵了半边,风扇倒是挺干净,佩服。所以每次清灰都是清了表面。加装7950装起来超级简单,然后安装散热模组,后盖。结束开机,我的天。47℃!!!!很久没看到过了。开了几个应用和网页,才区区60℃。一会又降到50了。没得说。没办法没控制变量,不知道是清了风扇降温的还是相变片起了大作用。但不清不行啊,温度顶不住啊。
2024年08月05日
26 阅读
0 评论
0 点赞
2024-07-29
天气每日推送
前言我也是在玩了这个博客后才知道还有api接口可以推送图片。而且这还是天气图片 韩小韩 展示一下在博客里面的效果吧: 思路开始在想这个数据如何处理,因为之前搞60S新闻推送,以为都是api接口数据返回的都是json一类的,没想到还蹦出来一个img/png格式的返回数据,给我愁坏了。 因为我使用的这个接口不返回比较复杂的东西,我直接上接口行不行呢?如下:<img src="接口地址"/>理论上姜是可行的,即使不是图片地址,他也会根据api再GET一遍。实践给女朋友写一个每日推送的话:#!/usr/bin/env python3 # _*_ coding:utf-8 _*_ import requests from notify import send # 导入notify.py中的send函数 from datetime import datetime def calculate_lovedays(start_date): """计算从指定日期到今天的天数""" start_date = datetime.strptime(start_date, "%Y-%m-%d") today = datetime.today() delta = today - start_date return delta.days def main(): title = "每日爱你哟啊💖" start_date = "2024-01-01" # 设置你开始计算的日期 loveday = calculate_lovedays(start_date) loveword = "嗨😘,今天是我们在一起的第{}天哦💌<br/>特别想你哟💗💗💗💗💗".format(loveday) message = "嗨!亲爱的佳佳,来看看今天的天气怎么样吧😚%0A%20%20%20%20%20%20%20%20今天是爱你的第{}天哦".format(loveday) content = "{}<br/><img src='https://api.vvhan.com/api/ipCard?tip={}'>".format(loveword,message) send(title, content) if __name__ == "__main__": main() 快去试试吧
2024年07月29日
43 阅读
0 评论
1 点赞
1
2
3
4