微信小程序截取字符串

Page({/***页面的初始数据*/data:{array:[]},/***生命周期函数--监听页面加载*/onLoad:function(options){varthat=this;console.log("start");//ajax请求开始wx.request({url:'',//ajax的请求路径method:"get",//ajax的请求方法//header是配置,根据后台配的来的header:{'app-id':app.globalData.app_id,'AUTHORIZATION':token},success:(res)=>{letdataList=res.data.results;//获取到的数据dataList.forEach((item)=>{item.submit_time=item.submit_time.substring(0,10);//要截取字段的字符串})that.setData({array:dataList//数据源})}})}})  以上wx.request方法来获取数据,其中forEach循环dataList,使用substri...

爬虫进阶之Selenium和chromedriver,动态网页(Ajax)数据抓取

Ajax(AsynchronouseJavaScriptAndXML)异步JavaScript和XML。过在后台与服务器进行少量数据交换,Ajax可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。传统的网页(不使用Ajax)如果需要更新内容,必须重载整个网页页面。因为传统的在传输数据格式方面,使用的是XML语法。因此叫做AJAX,其实现在数据交互基本上都是使用JSON。使用AJAX加载的数据,即使使用了JS,将数据渲染到了浏览器中,在右键->查看网页源代码还是不能看到通过ajax加载的数据,只能看到使用这个url加载的html代码。直接分析ajax调用的接口。然后通过代码请求这个接口。使用Selenium+chromedriver模拟浏览器行为获取数据。方式优点缺点分析接口直接可以请求到数据。不需要做一些解析工作。代码量少,性能高。分析接口比较复杂,特别是一些通过js混淆的接口,要有一定的js功底。容易被发现是爬虫。selenium直接模拟浏览器的行为。浏览器能请求到的,使用selenium也能请求到。爬虫更稳定。代码量多。性能低。Sele...

爬虫进阶之多线程爬虫

有些时候,比如下载图片,因为下载图片是一个耗时的操作。如果采用之前那种同步的方式下载。那效率肯会特别慢。这时候我们就可以考虑使用多线程的方式来下载图片。多线程是为了同步完成多项任务,通过提高资源使用效率来提高系统的效率。线程是在同一时间需要完成多项任务的时候实现的。最简单的比喻多线程就像火车的每一节车厢,而进程则是火车。车厢离开火车是无法跑动的,同理火车也可以有多节车厢。多线程的出现就是为了提高效率。同时它的出现也带来了一些问题。更多介绍请参考:https://baike.baidu.com/item/多线程/1190404?fr=aladdinthreading模块介绍:threading模块是python中专门提供用来做多线程编程的模块。threading模块中最常用的类是Thread。以下看一个简单的多线程程序:importthreadingimporttimedefcoding():forxinrange(3):print('%s正在写代码'%x)time.sleep(1)defdrawing():forxinrange(3):print('%s正在画图'%x)time.sle...
代码星球 代码星球·2021-02-23

python爬虫-使用cookie登录

什么是cookie?Cookie,指某些网站为了辨别用户身份、进行session跟踪而储存在用户本地终端上的数据(通常经过加密)。比如说有些网站需要登录后才能访问某个页面,在登录之前,你想抓取某个页面内容是不允许的。那么我们可以利用Urllib库保存我们登录的Cookie,然后再抓取其他页面,这样就达到了我们的目的。Urllib是python内置的HTTP请求库,官方地址:https://docs.python.org/3/library/urllib.html包括以下模块:>>>urllib.request请求模块>>>urllib.error异常处理模块>>>urllib.parseurl解析模块>>>urllib.robotparserrobots.txt解析模块 uurlopen一般常用的有三个参数,它的参数如下:urllib.requeset.urlopen(url,data,timeout)简单的例子:1、url参数的使用(请求的URL)response=urllib.request.urlo...

微信多开防撤回(带提示)2.8.0.133补丁

 用法:下载附件后解压替换微信PC文件夹wechatwin.dll文件即可生效/微信多开防撤回(带提示)2.8.0.133补丁链接:https://pan.baidu.com/s/1_8JNWTtFDmewZt5wWbfa0w提取码:58hu替换微信PC文件夹wechatwin.dll文件即可生效原文地址:https://www.52pojie.cn/thread-1132996-1-1.html...

HbuilderX+微信开发者工具配置

https://blog.csdn.net/weixin_42970423/article/details/100984418?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.compare&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.compare...

微信小程序开发 [07] 写在后面的话

写在后面的话基本算是吐槽了,在学完小程序的课程之后,我用博客园的api,写了个闪存的小程序,本来兴致勃勃甚至这篇是准备写“我的第一个小程序发布啦”,然而并没有。不是说我偷懒了没写,又或者个人拖延的原因,而是因为: 我一个个人开发者哪来什么企业主体的小程序号啊,于是可以说这个小程序算是暂时死掉了,只能期待将来UCG类目对个人开放时,再将它上架。在这期间还是花了不少时间去鼓捣的,OAuth2的授权,界面的参考和设计,CSS学习和应用,找公共图床,和某个大佬的客户端闪存格式兼容等,所以即使小程序没办法上架,也不算是毫无收获吧。丢一些图做个纪念,下一个小程序的内容已经想好了,抽时间就开始做啦,吸取教训才能更好,我安慰自己说...           ...

微信程序开发 [06] 一些补充的知识点

之前在讲到模板部分的时候,模板引入了,实际上模板对应的wxss也是可以独立开进行单独引入的。使用 @import 语句可以导入外联样式表,@import后跟需要导入的外联样式表的相对路径,用;表示语句结束,如下例:/**common.wxss**/.small-p{padding:5px;}4 1/**common.wxss**/2.small-p{3 padding:5px;4}/**app.wxss**/@import"common.wxss";.middle-p{padding:15px;} 1/**app.wxss**/2@import"common.wxss";3.middle-p{4 padding:15px;5}filters主要运动在图片上以实现特效,如模糊则为 -webkit-filter:blur(20px)...

微信程序开发 [05] wx.request发送请求和妹纸图

微信小程序中用于发起网络请求的API就是wx.request了,具体的参数太多,此处就不再一一详举了,基本使用示例如下:wx.request({url:'test.php',//仅为示例,并非真实的接口地址method:"POST",data:{param1:'',param2:''},header:{'content-type':'application/json'//默认值},success:function(res){console.log(res.data)}})14 1wx.request({2url:'test.php',//仅为示例,并非真实的接口地址3method:"POST",4data:{5param1:'',6param2:''7},8header:{9'content-type':'application/json'//默认值10},11success:function(res){12console.log(res.data)13}14})值得注意的有如下几点:希望在获取数据之后进行的操作,切记一定要写在success回调中,因为wx.request是...

微信程序开发 [04] 模板和模块化

如果相同的wxml代码可能在不同的页面重复使用,ctrl+c配合ctrl+v的方式,后期维护起来未免也太麻烦了。微信提供了“模板”,可以在模板中定义代码片段,然后在不同的地方调用。使用<template>对代码进行模板定义,并使用name属性为模板进行命名,如:<templatename="msgItem"><view><text>{{index}}:{{msg}}</text><text>Time:{{time}}</text></view></template>6 1<templatename="msgItem">2 <view>3  <text>{{index}}:{{msg}}</text>4  <text>Time:{{time}}</text>5 </view>6</template>而在需要使用模板的地...

微信程序开发 [03] 事件、数据绑定和传递

微信小程序中,事件的绑定依附于组件,当事件触发时,就会执行事件对应的处理函数。我们回到前几章中的例子,将index页面调整为首页(app.json中调整pages数组元素的顺序),此时我们希望,点击页面中的“HelloWorld”字样,能够跳转到我们之前写的Welcome页面中去:首先来说明一下事件的绑定形式:事件绑定依附于组件,所以其绑定的写法和组件的属性写法是类似的,以key、value形式key以bind或catch开头并跟上事件类型,如bindtap、catchtap,也可以使用冒号如bind:tap、catch:tapvalue是一个字符串,对应Page中同名的函数原来的wxml中HelloWorld对应的组件代码为:<viewclass="usermotto"><textclass="user-motto">{{motto}}</text></view>3 1<viewclass="usermotto">2  <textclass="user-motto">{{motto...

微信程序开发 [02] 页面注册和基本组件

对于小程序中的wxss布局方式,不推荐使用诸如position,float之类的属性,而是采用flex布局,灵活快捷自适应,关键是自适应!此处另起标题也是为了表达我对其强烈的推荐,因为我这个后端都能用flex很好的布局,可见其简单快捷性!强烈推荐阮一峰老师的两篇博文:Flex布局教程:语法篇Flex布局教程:实例篇...

微信程序开发 [01] 小程序基本结构和官方IDE简介

如上图,整个IDE分为四个部分:中间的文件目录树模拟器(左侧)编辑器(右上)调试器(右下) 其中调试器是不是很熟悉?没错,和你用的chrome开发者工具一模一样,稍微有点要提醒的是:.js类型的文件,在Sources中都有两个,其中xx.js是编译后的,xx.js?[sm]才是和我们实际文件相同,调试时使用xx.js?[sm] Storage可以看到当前小程序的缓存内容 AppData可以查看当前程序中的数据信息 最后,模拟器的预览和执行必须在编译后,所以每当你代码进行了更新,先点击一下”编译“,效果才会是最新的。 ...

微信程序开发 [00] 写在前面的话,疯狂唠唠

我总是喜欢在写东西之前唠唠嗑,按照惯例会在博文的开篇写这么一段“写在前面的话”,这次却为了这个唠嗑单独开了一篇文,大概预想着要胡说八道的话有点多。前段时间突然对小程序来了兴趣,说句实话,我都忘记了准确的导火线,大概是一直想做点什么个人的小作品,结果又因为贫穷限制了我买服务器。索性这个世界上有种东西叫“第三方API”,我买不起,我用别人的还不行吗?这个问题解决了,还有个问题没解决,那就是我这个人既不会iOS也不会Android,总不能用第三方API写Web吧,那不是也得要个人服务器,又回到最初的起点。于是用三方API结合微信程序就很有意思了,适配移动端也容易,体积小,开发起来成本也远远更低,加上现在微信大大提高了小程序在其生态的入口和地位,说不定掌握它的开发也是未来升职加薪的助力。说干就干,索性就去慕课网买了开发教学视频《微信程序入门与实战》,149,也还好,不算太贵。累计花了约30h,课程也大概上了近80%,顺便花了6h用gank.io的公开API撸了一个简单的刷刷妹纸图片的小程序(目前并没有上线,因为功能太简单了不想提交上线,后续再完善一部分再提交吧==),接近过年,无心再码点什...

[01] 网络爬虫的基本原理

既然知道了原理,那么我们试着来把百度的网页内容抓取下来,无非就是:模拟url连接获取响应的输入流把输入流的内容输出到本地publicclassTest{publicstaticvoidmain(String[]args){try{URLurl=newURL("http://www.baidu.com");URLConnectionconnection=url.openConnection();//建立连接connection.connect();//获取输入流InputStreamin=connection.getInputStream();//输出内容OutputStreamout=newFileOutputStream(newFile("C:/Users/Dulk/Desktop/baidu.txt"));byte[]temp=newbyte[1024];intsize=-1;while((size=in.read(temp))!=-1){out.write(temp,0,size);}}catch(MalformedURLExceptione){e.printStackTrace...
代码星球 代码星球·2021-02-21
首页上一页12345...下一页尾页