首页
友链
壁纸
留言
今日热榜
更多
关于
时光
推荐
精品流量卡
Search
1
都二十多年了,你的梦为什么还没碎!
57,093 阅读
2
2022年5个好用的 BT/ 磁力链接下载工具推荐 |Windows 、安卓系统
37,433 阅读
3
nps内网穿透实现外网访问树莓派
32,429 阅读
4
实践利用宝塔建emlog个人博客-超详细【原创】
26,137 阅读
5
Typecho-Joe-Theme主题帮助文档
24,656 阅读
闲杂乱码
Python
网站源码
微信小程序
娱乐分享
Is相册
软件工具
登录
Search
标签搜索
PHP
HTML
API
Javascript
源码
JS
Vue
Github
CloudFlare
接口
函数
SQL
ASP.NET
MVC
EF
T4模板
后台管理
CDN
微信小程序
MAC
韩小韩
累计撰写
262
篇文章
累计收到
1,308
条评论
首页
栏目
闲杂乱码
Python
网站源码
微信小程序
娱乐分享
Is相册
软件工具
页面
友链
壁纸
留言
今日热榜
关于
时光
推荐
精品流量卡
搜索到
151
篇与
闲杂乱码
的结果
2021-01-19
PHP过安全狗、过waf、免杀PHP大马 - 2021.1.19更新
{message type="info" content="分享一款博主一直在用的很不错的大马,PHP免杀过waf-幽灵ColdBlue免杀版本[官方去除后门版],此大马只为安全测试,请勿用于非法用途,如有问题,博主概不负责!"/}测试截图下载地址{cloud title="直链下载地址" type="default" url="https://d0.ananas.chaoxing.com/download/ef8344f86bd29d1513d2bf2279c0b8e3?at_=1611901884735&ak_=6d5ad4da3cd35820b35a48b6f9b26cf5&ad_=a4f1ae3a6cb186c2dd7bb993db4c1b68" password=""/}{cloud title="蓝奏云盘下载" type="lz" url="https://ohan.lanzous.com/iTxk2l0v0cj" password=""/}
2021年01月19日
2,228 阅读
3 评论
7 点赞
2021-01-15
PHP上传URL地址网络文件到服务器
如何将一个URL地址的网络资源文件上传到服务器?首先考虑的方法是将文件下载到本地,然后进行上传操作,那有没有一个更方便的方法,将一个网络文件直接上传到服务器呢?是不是可以通过文件流的方式上传呢?我这里使用的是 Guzzle 三方库,将一张百度上的图片上传到其他服务器。use GuzzleHttp\Client; try { $file = fopen('https://t8.baidu.com/it/u=1484500186,1503043093&fm=79&app=86&size=h300&n=0&g=4n&f=jpeg', 'r'); $multipart = [ [ 'name' => 'file', 'contents' => $file ] ]; $client = new Client(['verify' => false]); $response = $client->request('POST', 'https://xx.com/upload', [ 'multipart' => $multipart ]); if ($response->getStatusCode() === 200) { $content = $response->getBody()->getContents(); $result = json_decode($content, true); } } catch (\Exception $exception) { echo $exception->getMessage(); } return $result;
2021年01月15日
1,625 阅读
2 评论
2 点赞
2021-01-15
PHP微信小程序支付工具类封装
微信小程序支付流程小程序登录,获取openid后端调用微信支付统一下单得到预支付交易会话标识prepay_id组装小程序支付所需的几个参数,并进行签名支付成功,主动查询订单支付状态接收微信支付回调通知微信小程序支付<?php /** * 微信小程序支付 * @author Stephen */ namespace App\Helper\Pay; use GuzzleHttp\Client; class WxApp { private $app_id; private $secret; private $mch_id; private $wx_pay_url = 'https://api.mch.weixin.qq.com'; private $pay_uri = '/pay/unifiedorder'; private $order_query_uri = '/pay/orderquery'; public function __construct() { $this->app_id = 'app_id'; $this->secret = 'secret'; $this->mch_id = 'mch_id'; } /** * 下单 * @param float $totalFee * @param string $orderNo * @param string $orderName * @param string $notifyUrl * @param string $openId * @return array * @throws \GuzzleHttp\Exception\GuzzleException|\Exception */ public function pay(float $totalFee, string $orderNo, string $orderName, string $notifyUrl, string $openId) : array { $data = [ 'appid' => $this->app_id, 'mch_id' => $this->mch_id, 'nonce_str' => $this->generateNonceStr(), 'sign_type' => 'MD5', 'body' => $orderName, 'out_trade_no' => $orderNo, 'fee_type' => 'CNY', 'total_fee' => intval($totalFee * 100), // 单位:分 'spbill_create_ip' => request()->getClientIp(), 'time_start' => date('YmdHis'), 'notify_url' => $notifyUrl, 'trade_type' => 'JSAPI', 'openid' => $openId ]; $data['sign'] = $this->generateSignature($data); $payXmlStr = $this->arrayToXml($data); $unifiedOrder = $this->request($this->pay_uri, $payXmlStr); if (!$unifiedOrder) { throw new \Exception('支付请求失败'); } if ($unifiedOrder['return_code'] != 'SUCCESS') { throw new \Exception($unifiedOrder['return_msg'] ?? '支付请求失败'); } if ($unifiedOrder['result_code'] != 'SUCCESS') { throw new \Exception($unifiedOrder['err_code'] ?? '支付请求失败'); } return $this->getWxPayData($unifiedOrder); } /** * 回调 * @return string * @throws \Exception */ public function notify($notify) { if (!$notify) { throw new \Exception('Parse XML Error'); } if ($notify['return_code'] != 'SUCCESS') { throw new \Exception($notify['return_msg'])); } if ($notify['result_code'] != 'SUCCESS') { throw new \Exception($notify['err_code'])); } //签名验证 $signature = $notify['sign']; $array = (array)$notify; unset($array['sign']); if ($signature != $this->generateSignature($array)) { throw new \Exception('签名验证失败'); } return '<xml><return_code><![CDATA[SUCCESS]]></return_code><return_msg><![CDATA[OK]]></return_msg></xml>'; } /** * 查询订单 * @param string $orderNo * @param string $wxOrderNo * @return \SimpleXMLElement * @throws \GuzzleHttp\Exception\GuzzleException */ public function query(string $orderNo, ?string $wxOrderNo='') { $data = [ 'appid' => $this->app_id, 'mch_id' => $this->mch_id, 'out_trade_no' => $orderNo, 'nonce_str' => $this->generateNonceStr(), 'sign_type' => 'MD5' ]; $wxOrderNo && $data['transaction_id'] = $wxOrderNo; $data['sign'] = $this->generateSignature($data); $payXmlStr = $this->arrayToXml($data); $unifiedOrder = $this->request($this->order_query_uri, $payXmlStr); if (!$unifiedOrder) { throw new \Exception('订单查询失败'); } if ($unifiedOrder['return_code'] != 'SUCCESS') { throw new \Exception($unifiedOrder['return_msg'] ?? '订单查询失败'); } if ($unifiedOrder['result_code'] != 'SUCCESS') { throw new \Exception($unifiedOrder['err_code'] ?? '订单查询失败'); } return $unifiedOrder; } /** * 生成随机字符串 * @param int|null $length * @return string */ private function generateNonceStr(?int $length = 16) { $chars = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789'; $str = ''; for ($i = 0; $i < $length; $i++) { $str .= substr($chars, mt_rand(0, strlen($chars) - 1), 1); } return $str; } /** * 生成签名 * @param array $params * @return string */ private function generateSignature(array $params) { ksort($params, SORT_STRING); $formatStr = $this->formatQueryStr($params); return strtoupper(md5($formatStr)); } private function formatQueryStr(array $params) { $formatStr = ""; foreach ($params as $key => $val) { $formatStr .= "{$key}={$val}&"; } return $formatStr."key=".$this->secret; } private function arrayToXml(array $params) { $xml = "<xml>"; foreach ($params as $key => $val) { if (is_numeric($val)) { $xml .= "<" . $key . ">" . $val . "</" . $key . ">"; } else $xml .= "<" . $key . "><![CDATA[" . $val . "]]></" . $key . ">"; } $xml .= "</xml>"; return $xml; } /** * 微信小程序调用微信支付的参数 * @param $unifiedOrder * @return array */ private function getWxPayData($unifiedOrder) : array { $data = [ 'appId' => $this->app_id, 'timeStamp' => time(), 'nonceStr' => $this->generateNonceStr(), 'package' => "prepay_id=" . $unifiedOrder['prepay_id'], 'signType' => 'MD5' ]; $data['paySign'] = $this->generateSignature($data); return $data; } /** * 微信支付请求 * @param string $url * @param string|null $method * @param string|null $body * @return null|\SimpleXMLElement * @throws \GuzzleHttp\Exception\GuzzleException */ private function request(string $url, string $params) { $url = $this->wx_pay_url . $url; $client = new Client(['verify' => false]); $response = $client->request('POST', $url, [ 'body' => $body ]); $code = $response->getStatusCode(); if ($code === 200) { $content = $response->getBody()->getContents(); return simplexml_load_string($content, 'SimpleXMLElement', LIBXML_NOCDATA); } return null; } }发起支付请求$totalPrice = 100; //总金额,单位:元 $orderNo = date('Ymd') . rand(10000, 99999); // 订单号 $proName = '产品名称'; $callback = 'https://xx.com/pay/wxapp/callback'; // 支付成功后回调Url $openId = ''; // OPEN ID $wxAppPay = new App\Helper\Pay\WxApp(); // 将支付请求参数直接返回给前端,前端再到微信发起支付请求 return $wxAppPay->pay($totalPrice, $orderNo, $proName, $callback, $openId);支付完成,主动查询订单支付状态$orderNo = $_POST['order_no']; $wxAppPay = new App\Helper\Pay\WxApp(); $response = $wxAppPay->query($orderNo); if ($response['trade_state'] === 'SUCCESS') { // todo 支付成功,修改订单状态 }支付回调$post = file_get_contents('php://input'); $notify = simplexml_load_string($post, 'SimpleXMLElement', LIBXML_NOCDATA); $totalFee = $notify['total_fee']; // 总金额 $cashFee = $notify['cash_fee']; // 支付金额 $outOrderId = $notify['transaction_id']; // 微信订单号 $orderId = $notify['out_trade_no']; // 订单号 $paymentTime = $notify['time_end']; // 完成支付时间 // 回调验签 $wxAppPay = new App\Helper\Pay\WxApp(); $response = $wxAppPay->notify($notify); // todo 完成支付,处理订单
2021年01月15日
1,097 阅读
0 评论
1 点赞
2020-12-16
网站四种规格缩略图在线生成PHP源码
PHP网站缩略图在线生成源码 在线生成网站多设备缩略图{message type="info" content="一款在线生成网站缩图的源码,它能够在短短的几秒钟内,透过您所输入的网址请求,产生该网站或网页的缩图。此源码,需要空间支持PHP,仅供学习参考!"/}演示地址{anote icon="fa-link" href="https://www.vvhan.com/thumb/" type="success" content="点击查看"/} 下载地址{cloud title="蓝奏云盘下载" type="lz" url="https://ohan.lanzoui.com/iNar0jerxib" password=""/}
2020年12月16日
1,175 阅读
0 评论
3 点赞
2020-12-11
抖音无水印解析最新API接口源码 - 2020.12.11更新
市面上那些所谓的无水印解析,有的调用第三方,有的就是打个广告,想让别人来调用自己的,然后引流,然后收费,博主参考了 强仔的抖音无水印接口 稍作修改,上传即用。使用方法:打开抖音短视频APP,点开某个视频,点击右下角分享按钮,在分享弹框中点击复制链接或通过分享到微信QQ等获取分享链接,上传此源码,带上参数访问 例:http://127.0.0.1/api.php?url=https://v.douyin.com/J4trbnd附:强仔搭建好的接口 - > https://qz.al/api/douyin/api.php?url=https://v.douyin.com/J4trbnd接口代码<?php error_reporting(0); header("Access-Control-Allow-Origin:*"); header("Content-type:application/json; charset=utf-8"); $www_vvhan_com = isset($_GET['url']) && $_GET['url'] != "" ? $_GET['url'] : exit(json_encode(array("success" => false, "message" => "参数不完整"), JSON_UNESCAPED_UNICODE)); $www_vvhan_com_url = get_headers($www_vvhan_com, true)["location"]; preg_match_all('/video\/(.*?)\/\?region/i', $www_vvhan_com_url, $out); $www_vvhan_com_Arr = json_decode(www_Vvhan_Com("https://www.iesdouyin.com/web/api/v2/aweme/iteminfo/?item_ids={$out[1][0]}"), true); preg_match_all('/href="(.*?)">Found/i', www_Vvhan_Com(str_replace('playwm', 'play', $www_vvhan_com_Arr['item_list'][0]["video"]["play_addr"]["url_list"][0])), $www_vvhan_com_OutDatas); $www_vvhan_com_Jsons = array( "success" => true, "info" => [ 'title' => $www_vvhan_com_Arr['item_list'][0]["share_info"]["share_title"], 'cover' => $www_vvhan_com_Arr['item_list'][0]['video']["origin_cover"]["url_list"][0], 'url' => $www_vvhan_com_OutDatas[1][0] ] ); exit(json_encode($www_vvhan_com_Jsons, JSON_UNESCAPED_UNICODE)); function www_Vvhan_Com($www_vvhan_com) { $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $www_vvhan_com); curl_setopt($ch, CURLOPT_USERAGENT, "User-Agent:Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1"); 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); $www_vvhan_com_OutPut = curl_exec($ch); curl_close($ch); return $www_vvhan_com_OutPut; } ?>返回示例{"success":true,"info":{"title":"当你在爱情中遇到“凡尔赛”大师,你会怎么做? #恋爱 #cp @DOU+小助手","cover":"https:\/\/p9-dy.byteimg.com\/tos-cn-p-0015\/6fd9c25e85734b2aa2cda7174adb5348_1606730946~tplv-dy-360p.jpeg?from=2563711402","url":"http:\/\/v6.365yg.com\/198b6557fbfb5c1419228754856081d2\/5fd2eda9\/video\/n\/tosedge-tos-aggdsz-ve-0000\/a4aff3259c014b268077db2fbe16a322\/?a=1128&br=4830&bt=1610&cd=0%7C0%7C0&cr=0&cs=0&cv=1&dr=0&ds=3&er=&l=20201211104957010198060166561E897E&lr=&mime_type=video_mp4&qs=0&rc=M3lucTc4aWhmeTMzZGkzM0ApZzc5Z2dkNDw7NzpkOzQ4PGdmL3FrMXNoNC9fLS00LTBzczZfMi4yMzY2NjM2XjQwMjA6Yw%3D%3D&vl=&vr="}}
2020年12月11日
3,986 阅读
8 评论
6 点赞
2020-12-07
QQ 的一些 Scheme 接口
手机 QQ Scheme 接口直接上代码<?php // GET方式 $qq = $_GET["qq"]; // 简单判断 if(empty($qq)) { echo '参数不能为空!'; exit; } // 拼接 $zurl= "mqqapi://im/chat?chat_type=wpa&uin=$qq&version=1&src_type=web&web_src=qq.com"; // 重定向 header("Location:$zurl"); ?>QQ 联系人mqqapi://card/show_pslcard?src_type=internal&version=1&uin={QQ号码}QQ 群组mqqapi://card/show_pslcard?src_type=internal&version=1&card_type=group&uin={QQ群号}QQ 对话框mqqapi://im/chat?chat_type=wpa&uin={QQ号}&version=1&src_type=web&web_src=qq.com mqq://im/chat?chat_type=wpa&uin={QQ号}&version=1&src_type=web分享接口window.parent.frames.location.href = "mqqapi://share/to_fri?file_type=news&src_type=web&version=1&generalpastboard=1&share_id=1105471055&url=[baseurl]&previewimageUrl=[baseimage]&image_url=[baseimage]&title=[basetitle]&description=[basedesc]&callback_type=scheme&thirdAppDisplayName=UVE=&app_name=UVE=&cflag=0&shareType=0";内部新窗打开mqqapi://forward/url?version=1&src_type=web&url_prefix=[baseurl]添加 & 打开 QQ 群mqqapi://card/show_pslcard?src_type=internal&version=1&uin={QQ群号码}&card_type=group&source=qrcode
2020年12月07日
1,859 阅读
0 评论
1 点赞
2020-11-26
在线刷小米运动刷步数API接口源码
看了一下,网上流传的那些个小米运动刷步数源码全是JS调用别人的源码,把自己的帐号密码交给别人家,博主个人心理是不太舒服的,下面是博主参照 Github上 niushuai233 大佬的 mi-sport-change JAVA 项目,写了一个PHP版的纯接口。直接上代码代码请自行理解,调用,有小BUG请自行修复,代码只供参考,勿做非法之事!<?php // error_reporting(0); header("Access-Control-Allow-Origin:*"); header('Content-type:text/json; charset=utf-8'); $user = '小米运动帐号'; $pwd = '小米运动密码'; $steps = 66666; // 要刷的步数 $code = access_code($user, $pwd); if (strlen($code) > 3) { $tokenjson = login_token($code); $login_token = $tokenjson['token_info']['login_token']; $user_id = $tokenjson['token_info']['user_id']; $appjson = get_app_token($login_token); $user_id = $appjson['token_info']['user_id']; $app_token = $appjson['token_info']['app_token']; $t = get_time(); $time = date("Y-m-d", time()); $data_json = data_json($time, $steps); $res = change_steps($t, $user_id, $app_token, $data_json); echo $res; } else { exit("登录失败"); } exit(); function access_code($user, $pwd) { $url = "https://api-user.huami.com/registrations/+86{$user}/tokens"; $header = ["Content-Type " => "application/x-www-form-urlencoded;charset=UTF-8"]; $post_data = array( "client_id" => "HuaMi", "password" => $pwd, "redirect_uri" => "https://s3-us-west-2.amazonaws.com/hm-registration/successsignin.html", "token" => "access" ); $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_HTTPHEADER, $header); curl_setopt($ch, CURLOPT_USERAGENT, "MiFit/4.6.0 (iPhone; iOS 14.0.1; Scale/2.00)"); 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); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data); curl_setopt($ch, CURLOPT_HEADER, true); $output = curl_exec($ch); preg_match_all('/access=(.*?)&country_code/i', $output, $out); curl_close($ch); return $out[1][0]; } function login_token($code) { $url = "https://account.huami.com/v2/client/login"; $header = ["Content-Type " => "application/x-www-form-urlencoded;charset=UTF-8"]; $post_data = array( "app_name" => "com.xiaomi.hm.health", "app_version" => "4.6.0", "code" => $code, "country_code" => "CN", "device_id" => "2C8B4939-0CCD-4E94-8CBA-CB8EA6E613A1", "device_model" => "phone", "grant_type" => "access_token", "third_name" => "huami_phone" ); $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_HTTPHEADER, $header); curl_setopt($ch, CURLOPT_USERAGENT, "MiFit/4.6.0 (iPhone; iOS 14.0.1; Scale/2.00)"); 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); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post_data)); $output = curl_exec($ch); curl_close($ch); return json_decode($output, true); } function get_time() { $url = "http://api.m.taobao.com/rest/api3.do?api=mtop.common.getTimestamp"; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); 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); return json_decode($output, true)['data']['t']; } function get_app_token($login_token) { $url = "https://account-cn.huami.com/v1/client/app_tokens?app_name=com.xiaomi.hm.health&dn=api-user.huami.com%2Capi-mifit.huami.com%2Capp-analytics.huami.com&login_token={$login_token}&os_version=4.1.0"; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_USERAGENT, "MiFit/4.6.0 (iPhone; iOS 14.0.1; Scale/2.00)"); 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); return json_decode($output, true); } function data_json($time, $steps) { $datas = '[{"summary":"{\"slp\":{\"ss\":73,\"lt\":304,\"dt\":0,\"st\":1589920140,\"lb\":36,\"dp\":92,\"is\":208,\"rhr\":0,\"stage\":[{\"start\":269,\"stop\":357,\"mode\":2},{\"start\":358,\"stop\":380,\"mode\":3},{\"start\":381,\"stop\":407,\"mode\":2},{\"start\":408,\"stop\":423,\"mode\":3},{\"start\":424,\"stop\":488,\"mode\":2},{\"start\":489,\"stop\":502,\"mode\":3},{\"start\":503,\"stop\":512,\"mode\":2},{\"start\":513,\"stop\":522,\"mode\":3},{\"start\":523,\"stop\":568,\"mode\":2},{\"start\":569,\"stop\":581,\"mode\":3},{\"start\":582,\"stop\":638,\"mode\":2},{\"start\":639,\"stop\":654,\"mode\":3},{\"start\":655,\"stop\":665,\"mode\":2}],\"ed\":1589943900,\"wk\":0,\"wc\":0},\"tz\":\"28800\",\"stp\":{\"runCal\":1,\"cal\":6,\"conAct\":0,\"stage\":[],\"ttl\":' . $steps . ',\"dis\":144,\"rn\":0,\"wk\":5,\"runDist\":4,\"ncal\":0},\"v\":5,\"goal\":8000}","data":[{"stop":1439,"value":"WhQAUA0AUAAAUAAAUAAAUAAAUAAAWhQAUAYAcBEAUAYAUA8AUAsAUAYAUDIAUCQAUDkAUCkAUD4AUC0AUFcAUD8AUCkAUCEAUCwAUCsAUB4AUCQAUBsAUCcAUBQAUDcAUBoAUCYAUFcAUCAAUDkAUCEAWhQAWhQAWhQAUBAAUEgAUDsAUAgAWhQAUDwAUCEAUAIAUAsAUDoAUD8AWhQAWhQAWhQAWhQAWhQAWhQAAS0QEAsAWhQAAR8SEBcHYC4AUCoAUBMAUAIAUAYAUAsAUCsAUAUAUBIAUBIAUBsAUBgAUAoAUBsAUBUAUBkAUDIAUC0AUC4AUBAAWhQAUCsAUB8AUAIAUB8AUDUAUEEAUDUAUBkAUCYAUEoAUCYAUBIAUCAAUCkAUDAAUB4AUB0AUDEAUCUAUCgAUAQAWhQAUA8AUDwAUB8AUCUAUBQAUB4AUAUAWhQAUAAAUA8AUBkAUCgAUCwAUCkAUCgAYCIAYCIAYCgAUAoAWhQAUBwAWhQAUBoAUDkAUD4AYAkAYAYAWhQAWhQAUB4AWhQAUAQAUBcAUBAAUAUAWhQAUB0AcBYAehQAcBoAehQAehQAehQAcAMAcAMAehQAcAIAehQAcBIAcA0AehQAehQAcAsAcAYAcAEAcAoAehQAehQAcAwAehQAehQAehQAcAEAehQAehQAcAsAehQAehQAcA8AcBkAcAYAcBkAcC0AcAQAcBsAcAMAWhQAUAMAWhQAUBEAUAIAWhQAWhQAWhQAehQAehQAehQAehQAehQAehQAcAAAcB8AcBMAehQAehQAcDkAcBAAcAEAcAMAcAMAcCwAcA8AcAAAcAAAcCIAcAAAcCcAcB4AehQAcAkAehQAcCMAehQAehQAcAoAehQAehQAehQAcBgAcBgAcAkAehQAcAcAcCgAcBQAcA0AcAwAcCcAcCkAcAAAUAAAUAAAUB4AUBwAUAAAUAAAUCkAUBIAUBMAUCgAUA8AUBEAUD0AUCAAYAMAYCkAUBsAUB4AYCgAahQAUBkAWhQAWhQAUCAAUBcAUA8AUBAAUAcAUB8AUCEAUCMAUCkAYAMAYAAAUBsAUBEAUBgAUAUAUB0AUAAAUAAAUAAAUAAAUAAAUAQAUAAAUAAAUAAAUAAAWwAAUAAAcAAAcAAAcAAAcAAAcAAAcAAAcA0AcAAAcAAAcAAAcAIAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcA8AehQAehQAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAEAeRMAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAsAcAAAcAAAcAAAcAAAcAAAcAoAcAAAcBMAcAAAcAAAcAAAcAAAcAAAcAAAcA4AcAcAehQAehQAcAAAcAAAcAIAehQAehQAcAAAcAAAcAAAcAAAcAAAcAIAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcBcAehQAehQAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAehQAcAMAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcBUAeQAAcAAAcAAAcAAAcFgAcAAAcAAAcAAAcBkAeQAAcAAAcAAAcAAAcAAAcE0AcAQAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAeVAAehQAehQAcAAAcAAAcAAAcAAAcAUAeRwAUAAAUFUAUAAAUAAAUAAAUAAAUAAAUCMAeQAAcAAAcAAAcE0AUAAAUAAAUAAAUAAAUAAAUAAAcAAAcAAAcAAAcE4AcAAAcAAAcAAAcAAAcAgAcBAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAkAcAAAcAAAcAAAcAAAcBwAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAYAcBAAeQAAcB8AeQAAcAAAcAAAcAAAeSoAcAAAcAAAcAAAcAAAcAAAcAsAcAAAeScAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcCAAcAAAUAAAUAAAUAAAUAAAUAAAUBEAehQAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcBwAehQAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcBYAcAAAcAAAcAAAcAYAcAAAcAAAcCsAcAAAcAAAcAgAcAAAcAAAcBsAeRQAcAAAcAAAcAEAcAAAcAAAcAAAcAAAcAAAcAAAcA8AcAAAcAAAcBoAcAAAcAEAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAQAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcBIAcAAAcA0AcBAAcAAAcAAAcAAAcAAAehQAehQAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcAAAcCgAcAAAcBkAcAAAcB0AcAAAcAAAcBgAcAAAUAEAUBsAWhQAUB4AWhQAUCkAWQ8AUCsAUA0AWTUAXBAAWhQAUBMAUAQAUAcAUAoAUA8AUBkAUBcAUCoAUAIAUBQAWhQAWhQAUBIAUBQAUAcAWhQAUBYAWhQAUAgAWhQAWhQAUAkAUE0AUHUAAWMTEEcKYDoAYAgAUAMAWhQAUAUAUAYAUAkAUB4AUAsAUAIAUBMAWhQAAVQdAWAlEDYAYCQAUAQAUBgAUAgAUAUAUBQAUAIAWhQAUAkAUAMAUA4AWhQAehQAcAoAcAIAehQAcB0AcCcAUCsAUAEAUAgAUAoAUAIAUAsAUAIAWhQAWhQAUAgAUA0AWhQAUAYAWhQAUAEAWhQAWhQAUBAAUBQAUBIAUBcAUAoAYBAAYAIAAUkZAUglAVYSYBcAYAoAYCAAYAsAUBUAUB0AUBAAUBEAUCAAUBUAUBYAUA0AUB4AUBcAUBsAUBMAUBUAYAsAYAwAYAsAUB4AUBoAUBoAUBoAUBQAUAcAWhQAUBgAUBkAUBsAUBUAUBAAUCAAUCYAUB8AUB4AUBwAUAcAUBsAUBwAUBwAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAAfgAA","did":"DA932FFFFE8816E7","tz":32,"src":17,"start":0}],"data_hr":"\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+\/v7+","summary_hr":"{\"ct\":0,\"id\":[]}","date":"' . $time . '"}]'; return $datas; } function change_steps($t, $user_id, $app_token, $data_json) { $url = "https://api-mifit-cn.huami.com/v1/data/band_data.json?&t={$t}"; // $header = ["Content-Type " => "application/x-www-form-urlencoded;charset=UTF-8"]; $header = ["apptoken" => $app_token]; $post_data = array( "data_json" => $data_json, "userid" => $user_id, "device_type" => "0", "last_sync_data_time" => "1589917081", "last_deviceid" => "DA932FFFFE8816E7" ); $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_HTTPHEADER, $header); curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (iPhone; CPU iPhone OS 13_4_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 MicroMessenger/7.0.12(0x17000c2d) NetType/WIFI Language/zh_CN"); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE); curl_setopt($ch, CURLOPT_TIMEOUT, 5); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data); $output = curl_exec($ch); curl_close($ch); // return json_decode($output, true); return $output; } ?>
2020年11月26日
2,457 阅读
3 评论
1 点赞
2020-11-24
Python操作selenium
logging用法logging.basicConfig(level=logging.INFO, format='%(asctime)s - %(name)s - %(levelname)s - %(message)s') logger = logging.getLogger(__name__) logger.info("test")pyautogui坐标点击识别图片coords = pyautogui.locateOnScreen('1.png')获取坐标x, y = pyautogui.center(coords)点击坐标pyautogui.leftClick(x, y)
2020年11月24日
1,172 阅读
0 评论
0 点赞
1
...
9
10
11
...
19