param

python之多线程图片抓取

落花浮王杯 提交于 2020-03-09 01:44:14
站点目标: https://www.2717.com/ 编写脚本: import os import threading import time import requests from bs4 import BeautifulSoup headers = { 'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Safari/537.36', } def do_request(url, tries=3): # 添加重试机制 i = 0 while i < tries: try: res = requests.get(url, timeout=5) return res except requests.exceptions.RequestException as e: i += 1 print('request error.', e) return False def download_local(url, img_file): ''' 下载图片到本地 :param url: 远程图片地址 :param img_file: 本地存储地址 ''' res = do_request(url) if

React Native 底部导航栏

梦想的初衷 提交于 2020-03-08 20:32:57
首先安装:npm install react- native-tab-navigator      然后再引入文件中      import TabNavigator from 'react-native-tab-navigator'; 举例如下:      import React, {Component} from 'react'; import {StyleSheet, View,Text,Image} from 'react-native'; import TabNavigator from 'react-native-tab-navigator' export default class App extends Component<Props> { /*初始化state*/ constructor(props){ super(); this.state={ selectedTab:'tb_msg', } } /** * 公共组件方法 * @param selectedTab 选中的tab * @param title * @param icon * @param selectedIcon * @param imageStyle 选中时渲染图标的颜色 * @param mark 角标 * @param viewContent 页面内容 * @returns {*} */

phpcms v9联动菜单的调用方法及get_linkage函数简单过程

我只是一个虾纸丫 提交于 2020-03-07 19:25:14
{get_linkage($r['areaid'],1,' >> ',1)} 复制代码 当然这个 $r 也不是绝对的.要看你的loop 是如何写的. {loop $data $n $r} 如果是这样写的,就是 $r['areaid'] . 另外必须保证此字段被正确读取有值. 下面是global.func.php文件里函数get_linkage : 复制代码 代码如下: /** * 通过id获取显示联动菜单 * @param $linkageid 联动菜单ID * @param $keyid 菜单keyid * @param $space 菜单间隔符 * @param $result 递归使用字段1 * @param $infos 递归使用字段2 */ function get_linkage($linkageid, $keyid, $space = '>', $type = 1, $result = array(), $infos = array()) { if($space=='' || !isset($space))$space = '>'; if(!$infos) { $datas = getcache($keyid,'linkage'); $infos = $datas['data']; } if($type == 1 ) { if(array_key_exists(

AutoCAD.net CurveMeasurement实例2 径向线

蓝咒 提交于 2020-03-07 06:48:19
1 Curve Measurement Functions介绍 在AutoLisp开发里面,有一组以vlax-curve-get开头的曲线测量函数比较好用,主要功能是提供曲线上某一点的坐标、距离、切线。这些函数经常会被用到,如果要自己实现需要非常好的数学功底,还好我们只需要理解并拿来用即可。 Curve Measurement函数的共同之处是都是与曲线上的某一点有关,使用时需要用到曲线参数param才能得到这一点的坐标、距离、切线,且不同的曲线其param含义大不相同。下面我就param在各种曲线中的含义收集整理如下: 1)在line中,param为点在直线上距离起点长度,直线起点param为0,终点param为直线的长度。 2)在arc、circle、ellipse中,param为圆心到曲线起点逆时针旋转到该点的弧度值;circle、ellipse起点param为0,终点param为2pi,arc起点param对应圆弧dxf的50码值,终点param对应圆弧dxf的51码值。 3)在polyline中,param为计算点在polyline顶点上的顺序位置值,该值整数为计算点在polyline上的顶点顺序,以0为计数起点,小数部分为计算点在该polyline片段上的长度比率。 4)在Spline中,param是以Spline的拟合点进行直线连线,param表示在该直线上距起点的距离

BaseRepository

故事扮演 提交于 2020-03-07 04:50:40
public class BaseRepository<T, TS> where T : class where TS : DbContext, new() { //当前操作数据库的实例 private DbContext db = DbContextFactory<TS>.GetCurrentDbContext(); /// <summary> /// 单表的添加一条记录 /// </summary> /// <param name="entity"></param> /// <returns></returns> public bool Add(T entity) { //将实例添加到上下文中 db.Set<T>().Add(entity); //保存更改 return db.SaveChanges() > 0; } /// <summary> /// 单表的添加多条记录 /// </summary> /// <param name="entity"></param> /// <returns></returns> public bool AddRange(List<T> entities) { //将实例添加到上下文中 db.Set<T>().AddRange(entities); //保存更改 return db.SaveChanges() > 0; } ///

按照日期查询补全列表

社会主义新天地 提交于 2020-03-07 02:30:23
我们在写查询时,尤其是折线图这种数据的查询,经常遇到查最近n天的折线图数据,但是数据库中某几天没有数据,查询出来会缺几天,直接使用这个supplementList方法就可以补齐. public class LineChartDataPart < T > { /** * 坐标轴值 */ private String mark ; /** * 对应数据 */ private T data ; /** * 折线图断点补充,要求:list如果有值,需要按照next函数由小到大排序才能使用 最多补充500条 * 不要忽略返回值! * @param list 需要补充的list,如果为null 会创建新的 * @param start mark开始值 * @param end mark结束值 * @param next 如何根据mark得到下一个mark * @param defaultData 填充的数据data值 * @return List<LineChartDataPart> 不要忽略 */ public static < T > List < LineChartDataPart < T > > supplementList ( List < LineChartDataPart < T > > list , String start , String end , Function <

BaseService

烂漫一生 提交于 2020-03-06 23:36:14
public class BaseService<T>:IBaseService<T>,IDenpendecy where T:class { //当前操作数据库的实例 private BaseRepository<T, YShowDBEntities> baseRepository = new BaseRepository<T, YShowDBEntities>(); /// <summary> /// 单表的添加一条记录 /// </summary> /// <param name="entity"></param> /// <returns></returns> public virtual bool Add(T entity) { //调用单表的添加一条记录方法 return baseRepository.Add(entity); } /// <summary> /// 单表的添加多条记录 /// </summary> /// <param name="entity"></param> /// <returns></returns> public virtual bool AddRange(List<T> entities) { //调用单表的添加多条记录 return baseRepository.AddRange(entities); } /// <summary> /

基于 Spring + Mybatis 实现简单的 ElasticSearch 查询客户端

删除回忆录丶 提交于 2020-03-06 20:55:20
背景 在实际的 Java 项目开发中,比如 Spting Boot 应用,我们可能需要操作来自 ElasticSearch(后文简称 ES) 的数据,比如查询聚合等。同时,我们想要能够自定义DSL语句,满足复杂的查询需求。在目前的 ES Java 客户端 API 中 RestHighLevelClient 可以很好的实现,但是代码较为繁琐,而且不能满足 动 态 D S L \color{red}{动态 DSL} 动 态 D S L 的需求。因此,考虑基于Spring + Mybatis 实现简单的 ElasticSearch 查询客户端。 原理 Mybatis mapper 文件解析生成 DSL 语句 Spring RestTemplate 访问 Restful 服务 实现思路 熟悉 Mybatis 加载流程的都知道,Mybatis 会将所有的配置以及 SQL 语句初始化到 Configuration中。而且Spring 与 Mybatis 集成后会对 Mybatis 进行加载初始化。因此,可以将 DSL 语句以 SQL 的方式写到 mapper 文件中(以 xml 的的方式),利用 Mybatis 的 mapper 解析器生成相应的 DSL 语句字符串,还能利用 Mybatis 的标签完成动态 DSL 语句。 有了 DSL 语句后,我们就可以利用 Java 代码向 ES

JSTL 学习、应用记录

你说的曾经没有我的故事 提交于 2020-03-06 19:37:31
原来一直没有看过,我说过我是新手,但是好多资料上似乎也不重视 JSTL 。我看项目源代码发现其中使用到了这个标签库,感觉其还真是方便,页面看起来更加清爽。减少了 JAVA 程序员亲自写的代码量,还真验证了,不懒不做程序员,程序员如果写代码不想着偷懒,那么生活是很无趣的。 下面总结总结,学习学习。:) JSP 标准标记库( Standard Tag Library , JSTL) 是一组以标准化格式实现许多通用的 Web 站点功能的定制标记。 JSP 技术的优势之一在于其定制标记库工具。除了核心 JSP 标记,如 jsp:include 之外,定制标记库工具使您能够创建唯一的标记来描述以站点或应用程序为导向的操作。一旦您创建了定制标记库 ( 简称 taglib) ,当您扩展项目或转向另一个项目时您可以重复使用这些标记。您还可以将 taglib 传递给其它开发人员,从而他们可以在自己的网站上使用,或者在您 Web 应用程序的其它部分使用。 JSTL 的目标是为了简化 JSP 页面的设计。对于页面设计人员来说,使用脚本语言(默认值是 JAVA 语言)操作动态数据是比较困难的,而采用标签和表达式语言相对容易一些, JSTL 的使用为页面设计人员和程序开发人员的分工协作提供了便利。 一. 配置 JSTL 包括两个 JAR 文件, jstl.jar 和 standard.jar

escape、encodeURI和encodeURIComponent的区别

自闭症网瘾萝莉.ら 提交于 2020-03-06 15:05:28
一、escape和它们不是同一类 简单来说,escape是对字符串(string)进行编码(而另外两种是对URL),作用是让它们在所有电脑上可读。 编码之后的效果是%XX或者%uXXXX这种形式。 其中 ASCII字母、数字、@*/+ ,这几个字符 不会 被编码,其余的都会。 最关键的是,当你需要对URL编码时,请忘记这个方法,这个方法是针对字符串使用的,不适用于URL。 事实上,这个方法我还没有在实际工作中用到过,所以就不多讲了。 二、最常用的encodeURI和encodeURIComponent 对URL编码是常见的事,所以这两个方法应该是实际中要特别注意的。 它们都是编码URL,唯一区别就是编码的字符范围,其中 encodeURI方法 不会 对下列字符编码 ASCII字母、数字、~!@#$&*()=:/,;?+' encodeURIComponent方法 不会 对下列字符编码 ASCII字母、数字、~!*()' 所以encodeURIComponent比encodeURI编码的范围更大。 实际例子来说,encodeURIComponent会把 http:// 编码成 http%3A%2F%2F 而encodeURI却不会。 三、最重要的,我该什么场合用什么方法 区别上面说的很清楚了,接下来从实际例子来说说把。     1、如果只是编码字符串,不和URL有半毛钱关系