设计任务 设计一个主窗口,在其中添加三个标签和三个按钮,当点击按钮时,对标签的内容和色彩进行修改。 代码初步设计 import tkinter as tkroot = tk.Tk()def f1():label1.config(text='点我,我加油了,哈哈', bg='#A23400')def f2():label2.config(text='successful', bg='#000093')def f3():label3.config(text='peculiar', bg='#C4C400')label1 = tk.Label(root, text='标签1', fg='red', bg='#6C6C6C') label1.pack(anchor=t...
描述 解决了第一个,后续又出现一个,一个个解决,最终达到目的。环境是centos 6, Python 2.7, django 1.11 Error django.core.exceptions.ImproperlyConfigured: 'django.contrib.gis.db.backends.postgis' isn't an available database backend. Try using 'django.db.backends.XXX', where XXX is one of:'mysql', 'oracle', 'postgresql', 'sqlite3解决: 升级一下django版本,小版本也不妨尝试一下。 我的就是django 1.11,...
一 前言Selenium系列文章已经基本涵盖了主要的知识点,至于PO模式,发现有篇文章写的挺好的,后续转载分享过来,哈哈。Python Web UI自动化技术就要告一段落了,接下来打算写Django Web开发相关的文章,希望有兴趣的同学可以关注、一起学习,最后的目标是基于Django开发一套简易系统作为系列文章的总结。然后再继续网络爬虫、数据分析。。。好吧,感觉好多,而且只能靠业余时间来整。。。 作为Selenium系列的完结,本文将对一些常用...
一 前言在Web UI自动化测试中可能会遇到文件上传的场景,针对该场景主要有两种解决思路:如果是<input type="file">元素,可优先尝试send_keys() 输入文件路径;如果实际情况必须要处理windows文件选择框,则可尝试借助AutoIt实现。 二 处理方法假设现在我们有如下一个页面,需要进行文件上传操作: 手工进行文件上传的步骤为:点击【选择文件】->弹出windows文件选择框->选择文件->点击【开始上传】按钮。 分析页面源码,如下: ...
一 前言在python selenium系列(八)元素定位进阶之分层定位一文中,介绍了层级定位的思想。在实际应用中,还会遇到另外一种情况:元素属性唯一,定位方法也正确,但元素却定位不到。此时,需要检查下该元素是否在frame里。而针对这种情况,selenium 提供的switch_to.frame方法,可以轻松解决该问题。 二 实例假设现在我们有如下一个页面,需要对其进行自动化登录操作: 可能你会以为,这个页面也没什么特别之处,登录操作也是WEB ...
一 前言在前面的Selenium系列文章中,已经介绍过元素定位的方法,也强调过元素定位对自动化操作的重要性。本节将介绍一种分层定位思想,该思想主要用于解决目标元素无法直接定位的场景。现在想象这样一个场景:朋友请你去KFC吃炸鸡汉堡, 而KFC在城市的各个区都有的,所以你要先确定是哪个区哪个街道的KFC,根据位置属性从大到小逐级查找,这是符合逻辑的查找思路。在这个场景里,因目标属性相同(KFC不仅名字相同,风格也是统一的...
一、环境 Windows10 64位 Python3.6.1 64位二、安装Python3.x 去官网下载3.x的安装包: https://www.python.org/downloads/ 下载下来之后 点击进行安装 选择添加到环境变量中去 下一步 点击安装 安装成功 测试是否安装成功,在CMD下输入python 安装成功!! 三、安装Scrapy 先安装一些依赖:http://download.csdn.net/detail/u011781521/9815204 通过命令:pip install xxxx 安装以下文件 安装l...
一 前言在先前的系列介绍中,我们知道Selenium Web UI脚本开发需要先定位元素,除了基本的id,name,class name,tag name等,可以直接从网页源码中查看,但像xpath、css,它们已经不再是可以定位的一串字符,而且表达式,所以,不可避免的需求就是如何验证用于元素定位的xpath、css表达式是否正确呢?总不能每次调整就靠执行脚本来验证吧,那样将会大大降低开发效率。 当然,如果细心的你阅读过python selenium系列(二)元素定位...
题目描述输入一颗二叉树的跟节点和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径。(注意: 在返回值的list中,数组长度大的数组靠前)# -*- coding:utf-8 -*- # class TreeNode: # def __init__(self, x): # self.val = x # self.left = None # self.right = None class Solution:# 返回二维列表,内部每个列表表示找到...
一 前言 在页面操作中,可能会出现一些非预期的弹框,就拿最简单的登录场景来说,在登录成功后进入页面前,可能弹出某类提示信息的窗体,这类窗体的共性是:非必然出现。也就是说,当你登录系统的外部条件满足时,不会出现;否则出现,且阻止了页面的加载。针对该类问题,本文介绍一个小技巧来处理此类或有或无的窗体弹框。 二 为什么需要处理或有或无的弹框在脚本开发中,我们重视脚本的稳定性,除了系统页面发生更改导致脚本必须...
<div id="cnblogs_post_body" class="blogpost-body"> <div class="cnblogs_code"><pre># -*- coding: utf-<span style="color: rgba(128, 0, 128, 1)">8</span> -*-<span style="color: rgba(0, 0, 0, 1)">import redisr </span>=redis.Redis(host=<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">123.156.74.190</span><span style="color: rgba(128, 0, 0, 1)">"</span>,port=<sp...
初次使用redis时,在链接Redis后,运行报错“module redis has no attribute Redis ”。 具体代码如下:import redis r = redis.Redis(host=192.168.2.22,port=6379,db=2) r.set(name,Delia) print(r.get(name))报错如下: 尝试性解决方法一: 在Python安装路径下使用pip安装redis,重新运行程序;pip install redis尝试无果。 尝试性解决方法二: 在pycharm中file --> setting --> Project Interpreter 下选择redis进行导入,...
django官方文档---使用多个数据库 Django多数据库多数据库 这篇主题描述Django 对多个数据库的支持。大部分Django 文档假设你只和一个数据库打交道。如果你想与多个数据库打交道,你将需要一些额外的步骤。定义你的数据库 在Django中使用多个数据库的第一步是告诉Django 你将要使用的数据库服务器。这通过使用databases 设置完成。该设置映射数据库别名到一个数据库连接设置的字典,这是整个Django 中引用一个数据库的方式。字典中...
当你的才华还撑不起你的野心时,你应该静下心去学习 。前言 工欲善其事,必先利其器。redis数据库对于网络爬虫的作用不容小觑,安装必然是第一步,话不多说,进入正题。 一、安装 可以在这个地址下载好需要的安装包文件,对于windows 64位系统,选择如下安装包下载到你的工作目录下,比如C:/盘: 解压后,将文件夹重新命名为 redis,那你的redis文件夹所在目录就为C:/redis。 二、启动redis服务器 windows系统下,打开cmd提示符窗口...
目标 系列第三篇里做了基本的AST遍历。 在深入做SQL中的表名列名提取前,还需要先解决第三篇里遗留的两个实用性问题,分号和大小写 分号问题 分号问题的表现是自动生成的HiveParser.java代码,只能解析单个的语句,对包含多个语句的sql文本会报错,甚至连单个语句结尾多一个分号都不行。例如这种 SELECT DISTINCT a1.c1 c2, a1.c3 c4, '' c5 FROM db2.tb2 a1 ;还有这种 SELECT DISTINCT a1.c1 c2, a1.c3 c4, '' c5 FROM db2.tb2 ...