【XML】知识“点”
what?
关键字:
标记语言(类似于HTML)
可扩展性(标记都是自己定义的)
设计宗旨(包含和传输数据)
推荐标准(W3C)
与HTML的差异
XML和HTML是兄弟关系,不是敌对关系,所以它们各有所长
它们之间的主要差异是:XML的核心是包含和传输数据的,而HTML的核心是显示数据
声明
多数XML文件都是以XML声明开始的,提供了关于文档的基本信息。
实例:...
【ASP.NET】基础与对象
基础
两大服务器:
IIS
Interne Information Server,微软开发的,运行在微软系统上
Apache
开源软件,有Windows和Linux版本
(PS:web服务器默认的是80端口)
为什么有的网页第一次打开会比较慢,而有的网页每次打开都很慢?(asp.net和asp还有php 的区别)
asp.net...
【ASP.NET】表达式与对象
Application
和Session 很类似的一个对象,数据存放在服务器中,而且都是object类型的数据;
不同的是,在它里边的数据可以被用户设置和获取,而且在appliction里的数据没有生命周期,只要不手动去删除,它里边的数据不会消...
文件名编码错误UnicodeEncodeError和surrogates not allowed
你想使用原始文件名执行文件的I/O操作,也就是说文件名并没有经过系统默认编码去解码或编码过。
使用原始字节字符串
默认情况下,所有的文件名都会根据 sys.getfilesystemencoding() 返回的文本编码来编码或解码。比如:
>>> sys.getfilesystemencoding()
'utf-8'
>&a
增量式解析大型XML文件
问题
你想使用尽可能少的内存从一个超大的XML文档中提取数据。
解决方案
任何时候只要你遇到增量式的数据处理时,第一时间就应该想到迭代器和生成器。 下面是一个很简单的函数,只使用很少的内存就能增量式的处理一个大型XML文件:
from xml.etree.ElementTree import iterparse
def parse_and_remove(filename, path):
...
Composer 提示 but these conflict with your requirements or minimum-stability
安装一个模块的时候,提示:
but these conflict with your requirements or minimum-stability
原因是安装的模块和设置的需求或最小稳定版本冲突了。
可以修改composer.json把minimum-stability改为dev。...
CentOS下安装代理客户端:Shadowsocks和Privoxy
网络问题
使用composer的时候经常会因为网络原因导致一些问题:
composer
Failed to decode response: zlib_decode(): data error
The “http://getcomposer.org/versions“file could not be downloaded
Content-Length mismatch
最彻底的解决方法就是...
Selenium Python设置Firefox和Chrome代理
设置Firefox代理
proxy = get_proxy().strip()
proxy_ip = proxy.split(":")[0]
proxy_port = proxy.split(":")[1]
profile = FirefoxProfile()
profile.set_preference(&
Python3 获取绝对路径
import os
os.path.abspath('.') # 当前所处的文件夹的绝对路径,如/usr/local
os.path.abspath('..') # 当前所处的文件夹上一级文件夹的绝对路径
os.path.abspath(os.path.dirname(__file__)) # 当前文件所在绝对路径
os.path.abspath(os.path.dirname(os.pat...
Python Robot Framework
简介
Robot Framework是一款自动测试框架。
官网:http://robotframework.org/
GitHub:https://github.com/robotframework/robotframework
例子
*** Settings ***
Documentation A test suite with a single test for vali...
python PyAutoGUI 模拟鼠标键盘操作和截屏
简介
一款跨平台/无依赖的自动化测试工具,目测只能控制鼠标/键盘/获取屏幕尺寸/弹出消息框/截屏。
安装
pip install pyautogui
鼠标键盘控制
>>> import pyautogui
>>> screenWidth, screenHeight = pyautogui.size()
>&
Python模块PyAutoIt调用AutoIT
简介
Python版本AutoIT,直接绑定到 AutoItX3.dll,然后就可以使用AutoIT的功能了。
安装
pip install -U pyautoit
例子
运行记事本,然后写入“hello world”,最后不保存关闭。
import autoit
autoit.run("notepad.exe")
autoit.win_wait_active("[CLASS:N...
Python pywinauto 自动操作Windows GUI
简介
pywinauto依赖pywin32,可以自动操作微软windows窗口、鼠标、键盘。
安装
例子
app.UntitledNotepad.menu_select("File->SaveAs")
app.SaveAs.ComboBox5.select("UTF-8")
app.SaveAs.edit1.set_te
Python GUI工具包wxPython
简介
wxPython是Python的GUI工具包,支持跨平台。
安装
pip install -U wxPython
例子
Hello World
# First things, first. Import the wxPython package.
import wx
# Next, create an application object.
app = wx.App()
# ...
Selenium处理下拉列表select
实用selenium的Select模块来对select下拉框进行操作很方便,现在列举出代码样例。
选中
from selenium.webdriver.support.ui import Select
# 定位下拉列表
ele = driver.find_element_by_tag_name("select")
# 根据索引选中
Select(ele).select_by_index(2...
简单的Python3例子-ECB模式的AES加密解密
from hashlib import md5
from base64 import b64decode
from base64 import b64encode
from Crypto.Cipher import AES
# Padding for the input string --not
# related to encryption itself.
BLOCK_SIZE = 16 ...
简单的Python3例子-CBC模式的AES加密解密
from hashlib import md5
from base64 import b64decode
from base64 import b64encode
from Crypto import Random
from Crypto.Cipher import AES
# Padding for the input string --not
# related to encryption...
Java安全框架Shiro
简介
Apache Shiro 是一个强大易用的 Java 安全框架,提供了认证、授权、加密和会话管理等功能,对于任何一个应用程序,Shiro 都可以提供全面的安全管理服务。并且相对于其他安全框架,Shiro 要简单的多。本教程只介绍基本的 Shiro 使用,不会过多分析源码等,重在使用。
没有使用Shiro之前,我们的用户登陆和授权,都是自己敲代码写后台实现,Shiro框架就封装对用户认证和...
Python使用Windows剪贴板
简介
python调用pywin32的功能,来实现剪贴板(ClipBoard)功能。
安装
python3
pywin32
pip install pywin32
如果想用系统范围的功能,例如调用COM对象、windows服务等,则需要这么安装:
python Scripts/pywin32_postinstall.py -install
复制粘贴文本
# coding=...
今日推荐
周排行