5 albertlii

尚未进行身份认证

分享是进步的阶梯!

等级
TA的排名 4w+

Python爬虫之旅(一):小白也能懂的爬虫入门

爬虫是什么爬虫就是按照一定的规则,去抓取网页中的信息。爬虫流程大致分为以下几步:向目标网页发送请求获取请求的响应内容按照一定的规则解析返回的响应内容,获得想要的信息将获取的信息保存下来战前准备在正式开始前,我们先看下我们需要准备些什么:开发环境:Python3.6开发工具:PyCharm使用框架:requests2.21.0、lxml4.3.3以上是本次开发中使用到的...

2019-05-10 14:14:38

Python:人工智能库如何选择,百度图像识别入门

前言AI是目前非常火热的一个方向,公司想要在未来有更加长足的发展,在AI与人工智能领域的探索是必不可少的,在刚刚过去的四月份的上海科技博览展会上,部分参展公司的项目都已接入AI,比如看到的一个自助咖啡售卖机,使用了刷脸支付。当然,目前的这些AI和人工智能还有很大缺陷,因为用户行为是多变的,AI智能也只是在经过深度学习和大量模型训练后产生的,如果用户的行为习惯超出了你的训练范围,则有可能识别错...

2019-05-06 18:23:12

微信小程序UI之旅:标签流组件的简单实现

效果图github传送门:https://github.com/albert-lii/wx-abui/tree/master/abui/widgets/ab-label-flowdemo传送门:https://github.com/albert-lii/wx-abui/tree/master/pages/mainex自定义属性和方法属性描述src数据源(数组)...

2019-05-06 11:43:59

微信小程序UI之旅:自定义轮播图组件

轮播图展示github传送门:https://github.com/albert-lii/wx-abui/tree/master/abui/widgets/ab-bannerdemo传送门:https://github.com/albert-lii/wx-abui/tree/master/pages/mainex自定义属性和方法属性描述src数据源curr...

2019-05-06 11:42:25

微信小程序UI之旅:图片组件实现占位图功能

组件样式:github传送门:https://github.com/albert-lii/wx-abui/tree/master/abui/widgets/ab-easy-imagedemo传送门:https://github.com/albert-lii/wx-abui/tree/master/pages/mainex自定义属性和方法属性描述src图片资源...

2019-05-06 11:19:01

微信小程序UI之旅:可分页加载,设置列数的智能瀑布流组件

前言在开始正文之前,不得不吐槽一下,小程序的限制好多。本来想在自定义组件中使用slot插槽,让组件更加灵活的,结果slot并不能和for循环列表一起配合使用,当slot写在循环体中时,只能被渲染一次,而使用抽象节点来代替的话,每次定制循环都要自定义组件,则更加麻烦,希望微信能做些优化。瀑布流结构瀑布流是一种很常见的布局,为了以后可以更加简便的使用,我们在本文会将瀑布流布局封...

2019-05-01 23:51:51

微信小程序填坑之路(九):setData数据量过大的解决与分页加载的实现

我们经常使用setData方法来修改数据,从而达到更新页面的目的。但是当我们通过setData方法设置的数据过大时就会报如下错误。vdSyncBatch数据传输长度为2260792已经超过最大长度1048576这是因为setData设置的数据量是有限制的,单次设置的数据大小不得超过1024kb,否则就会出现如上错误。而我们在一些列表页面中,每次上拉加载更多后,会习惯性的把之前存在的...

2019-04-29 18:34:43

微信小程序填坑之路(八):下拉刷新动画没有动画效果的原因

下拉刷新与上拉加载的使用下来刷新和上拉加载是一款应用中非常常用的两种功能,微信小程序直接提供了这两种功能,下面来看下如何使用。先在页面的json文件中添加"enablePullDownRefresh":true,表示开启下拉刷新与上拉加载功能。然后在页面的js文件中实现onPullDownRefresh与onReachBottom方法//下拉刷新方法onPullDow...

2019-04-29 17:46:40

微信小程序填坑之路(七):scroll-view的scroll-into-view属性

前言最近做一个项目,有个页面中需要列表展示图片,并且刚进入展示页面的时候,不是直接显示顶部,而是显示列表中指定图片的位置。正好scroll-view的scroll-into-view属性可以滑动到列表中的指定item位置,就不用在额外去做别的实现了。scroll-into-view的注意点scroll-into-view是scroll-view的一个属性,主要作用是用于滚动...

2019-04-21 20:30:48

微信小程序UI之旅:便捷的搜索框组件

前言做小程序开发有段时间了,开发中遇到各种各样的UI需求,很多都是类似甚至重复。虽然可以使用template和include来实现代码复用,但是它们都没有逻辑处理能力,有时一些简单的逻辑,我们更加希望可以直接被模板内部实现掉,所以更好的方法是直接封装成组件,最大程度的实现代码复用。本文及后续一系列文章将会介绍常用UI组件的封装,方便今后开发中使用,所有样式源码及示例将提交至开源项目wx-abu...

2019-04-15 18:20:55

Python3学习笔记:清晰理解协程

线程和进程在了解协程之前,我们先简单了解一下进程与线程,并发与并行的概念。进程:是资源分配的独立单位。我们可以将其通俗的理解为电脑中运行的程序的实例,例如打开一个浏览器就是启动了一个浏览器进程,打开一个记事本就是启动一个记事本进程。线程:是操作系统调度的基本执行单位。当我们启动了一个浏览器时(即启动了一个浏览器进程),我们可能会做播放视频、下载文件等操作。在浏览器进程中,我们执行的这些操作...

2019-03-31 19:29:42

一个Android开发者自学Python的心路历程

前言本人主要从事Android开发,也做过微信小程序,有时还会在Java那边客串一把(谁让Android是用的Java呢@~@),最近在自学Python,已有半月有余。因近年来,技术迭代快速,前端更是层层爆发,单纯的Android或者IOS开发已经不足以应对市场变化,在这技术大潮下,成为一个复合型开发者就显得尤为重要,所以又去进行了微信小程序开发。然而,如果想要在一个项目中更彻底的了解项目架构与...

2019-03-29 09:39:16

Python3学习笔记:清晰理解迭代器、生成器以及yield表达式

前言迭代器、生成器与装饰器是python中非常重要的三个特性。对于迭代器,很多初学者理解起来不是很困难,但是学习生成器与装饰器时可能就会感觉云里雾里。本篇文章会用简洁清晰的方式讲解迭代器与生成器,同时记录一下最近的学习成果。迭代器(Iterator)在介绍迭代器之前,我们需要先简单了解一个概念:可迭代对象(iterable)。可以直接作用于for循环的对象,称之为可迭代对象,例如list、t...

2019-03-27 14:42:22

从源码开始浅析Java中的==、equals以及hashCode

====比较的是对象的存储地址是否相同Stringa="abc";Stringb="abc";Stringc=newString("abc");a==b,返回truea==c,返回false在Java中用new创建的对象是存放在堆内存中,而“abc”却是存放在常量池中,所以“abc”与newString(“abc”)的地...

2019-03-26 12:14:12

Kotlin学习笔记:Kotlin中五种单例模式的实现

1、饿汉式在类被初始化时就已经在内存中创建了对象,以空间换时间,故不存在线程安全问题,但是会使类加载变慢。Java实现publicclassSingletonDemo{privateSingletonDemo(){}//在类加载时就完成了初始化,使得类加载较慢privatestaticSingletonDemoins...

2019-03-20 14:45:06

经典问题:String s1 = "abc" 与 String s2 = new String("abc")的区别

这是以前刚学Java那会经常被问到的问题,并且也会经常出现在面试中。这个问题不仅仅只局限于Java,可以适用于其他大部分语言,正好最近有个小朋友在学编程,特此整理一下。Strings1="abc";Strings2=newString("abc");首先,我们先看看以上两句分别做了什么?Strings1=“abc”做了什么在栈中创建了一个名为s1的变量...

2019-03-15 11:28:50

Android:项目模块化/组件化的架构之路(二)

项目模块化的两种模式目前项目模块化大体可以分为两种模式,分别是submodule和multi-project。根据字面意思,我们就可以很容易理解这两种模式,下面就让我们来具体了解一下这两种模式!submodule模式如上图所示,项目中只有一个project工程,在project中构建多个module组件,每个module都有自己的git仓库,非常直观,这也是我们最常见的模块化架构。优点...

2019-01-21 16:20:06

PyCharm Professional 2018版的破解方法

前言PyCharm是一款专注于python开发的IDE,功能很强大,目前有社区版与专业版。社区版免费,但是对比专业版有很多功能是没有的,需要自己装插件,比如说常用的flask框架,专业版直接提供,社区版需要自己安装插件。但是如果使用专业版是要收费的,所以为了能免费使用专业版,我们需要破解。开始破解,提供两种比较稳定的破解方法Step1去官网下载专业版的PyCharmStep2安装好...

2018-12-22 14:28:18

Android:超详细的本地搭建maven私服以及使用Nexus3.x搭建maven私服的讲解

前言在Android开发中,会经常遇到需要将写好的某个lib用于各个不同的项目中。一般的做法,就是将lib直接导入到项目中。但是假如lib有bug,那么所有使用lib的项目我们都要进去修改lib的bug,这样即繁琐,工作量又大。假如我们可以像gralde中添加依赖那样,直接一句implementation'xxx'代码从maven仓库中调用lib,那么我们就不用再一个一个项目中去修复lib的b...

2018-12-06 15:05:31

彻底明白ip地址,区分localhost、127.0.0.1和0.0.0.0

通俗的理解ip是什么对于ip,大家并不陌生,在网络访问中,我们会经常使用到,那么ip是什么呢?其实如同我们的身份证一般,ip就是我们在网络中的身份证,具有唯一性,用于标识我们的身份。我们平时使用http协议对某个域名进行访问,如www.baidu.com,本质即为对域名绑定的ip进行访问。公网与内网中的ip一般我们会将网络划分公网与内网。在公网中,ip是全球唯一的,不会在公网中出现重复的...

2018-12-04 15:18:56

查看更多

勋章 我的勋章
  • GitHub
    GitHub
    绑定GitHub第三方账户获取
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv2
    勤写标兵Lv2
    授予每个自然周发布4篇到6篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。