- 1:1精准还原!用Python+Adobe Acrobat DC实现PDF转Word全自动化
朴拙Python交易猿
pythonpdfword
以下是您请求的博客文章,包含详细的代码注释及分步解析:1:1精准还原!用Python+AdobeAcrobatDC实现PDF转Word全自动化一、为什么要选择AdobeAcrobatDC?作为PDF标准的制定者,AdobeAcrobatDC在格式转换领域具有无可比拟的优势:精准还原-保持原始布局、字体和格式表格保留-完整保留表格结构和数据批量处理-支持自动化执行重复任务OCR支持-自动识别扫描件中
- 后台运行python脚本
ch_atu
#python之路pythonlinux
运行nohuppython-usocket_api.py>data.out2>&1&注:data.out是输出文件
- Python批量Word转PDF神器,让你从此轻松转换文档!
码无止尽
Python办公自动化pythonwordpdf
大家好!今天我们来聊聊工作中可能遇到的一个“头大”问题:如何批量将Word文档转成PDF?是不是光听听都感觉头皮发麻?不用担心,今天我们就来分享一个Python小技巧,让你在批量转换文档时再也不用抓狂!为什么需要批量Word转PDF?想象一下,你是公司的行政小能手,每天面对成堆的合同、报告需要转换格式,手动操作简直不敢想象的累。关键是,老板还老催!Python作为技术潮人必备的技能之一,这时候就派
- Gemini 2.0 Flash
dev.null
AIpython
Gemini2.0Flash是Google最新推出的AI语言模型,旨在提升速度和效率,满足各种任务需求,包括写作、规划、学习和图片生成等。citeturn0search3Gemini2.0Flash的主要特性包括:低延迟和高性能:专为低延迟和高性能设计,适用于需要快速处理大量数据的任务。citeturn0search4多模态输入:支持多种输入形式,包括文本、图片、音频和视频,能够处理多
- 一周学会Flask3 Python Web开发-使用SQLAlchemy动态创建数据库表
java1234_小锋
Flask3视频教程python数据库开发语言flask3flask
锋哥原创的Flask3PythonWeb开发Flask3视频教程:2025版Flask3Pythonweb开发视频教程(无废话版)玩命更新中~_哔哩哔哩_bilibili前面我们定义了模型,我们可以通过sqlalchemy对象提供的create_all()方法来映射和动态创建数据库表。因为我们用到了模块化蓝图blueprint,这个sqlalchemy对象会在app.py和蓝图模块之间互相调用,导
- Etherpad开发部署(windows版)
舌尖上的五香
编辑器
项目地址:https://gitcode.com/gh_mirrors/et/etherpad-liteWindows用户可以选择预建的安装包或手动安装。若通过Git克隆,记得执行bin\installOnWindows.bat。start.bat启动Etherpad配置及管理功能配置文件settings.json搜索users,去掉注释重启服务器killallnode测试管理员功能http://
- 用Python实现PDF转Doc格式小程序
Bruce_xiaowei
总结经验笔记编程pythonpdf小程序
用Python实现PDF转Doc格式小程序以下是一个使用Python实现PDF转DOC格式的GUI程序,采用Tkinter和pdf2docx库:importtkinterastkfromtkinterimportfiledialog,messageboxfrompdf2docximportConverterimportosclassPDFtoDOCConverter:def__init__(sel
- python 使用flask+sqlalchemy 实现简单数据查询接口
darling331
pythonflask开发语言后端
数据库表结构和部分数据SETNAMESutf8mb4;SETFOREIGN_KEY_CHECKS=0;--------------------------------Tablestructureforuser------------------------------DROPTABLEIFEXISTS`user`;CREATETABLE`user`(`id`int(11)NOTNULLAUTO_I
- MAC-禁止百度网盘自动升级更新
ZHOU_VIP
MACjava
通过终端禁用更新服务(推荐)此方法直接移除百度网盘的自动更新组件,无需修改系统文件。步骤:1.关闭百度网盘后台进程按下Command+Space→输入「活动监视器」→搜索BaiduNetdisk或UpdateAgent→结束相关进程。2.删除自动更新配置文件打开终端,依次执行以下命令(按顺序操作):#切换到root权限(输入密码)sudosu#删除百度网盘更新配置文件rm-rf/Library/L
- FastExcel/EasyExcel简介以及源码解析
舌尖上的五香
java
简介官网地址GitHub地址基于MIT协议发展历史由EasyExcel发展而来2018/02/07:发布1.0.02019/09/17:发布2.0.02021/10/21:发布3.0.12024/06/18:发布4.0.02024/11/06:进入维护模式2024/12/05:发布FastExcel1.0.0主要特性高性能读写简单易用流式操作读取执行行数技术原理内存优化:基于流式读取技术,不需要一
- 《Python实战进阶》No20: 网络爬虫开发:Scrapy框架详解
带娃的IT创业者
Python实战进阶python爬虫scrapy
No20:网络爬虫开发:Scrapy框架详解摘要本文深入解析Scrapy核心架构,通过中间件链式处理、布隆过滤器增量爬取、Splash动态渲染、分布式指纹策略四大核心技术,结合政府数据爬取与动态API逆向工程实战案例,构建企业级爬虫系统。提供完整代码与运行结果,包含法律合规设计与反爬对抗方案。Scrapy是适用于Python的一个快速、高层次的屏幕抓取和web抓取框架,用于抓取web站点并从页面中
- curl不通 k8s_【K8S排错】在集群的POD内不能访问clusterIP和service
weixin_39950057
curl不通k8s
排错背景:在一次生产环境的部署过程中,配置文件中配置的访问地址为集群的Service,配置好后发现服务不能正常访问,遂启动了一个busybox进行测试,测试发现在busybox中,能通过coredns正常的解析到IP,然后去ping了一下service,发现不能ping通,pingclusterIP也不能ping通。排错经历:首先排查了kube-proxy是否正常,发现启动都是正常的,然后也重启了
- python基础——元组【特点,创建,常见操作方法:index,len,count】
愚润泽
python入门基础python开发语言学习方法笔记经验分享
前言:上一篇文章python基础——列表讲解了关于列表的先关知识,还介绍了很多列表的常见操作方法,这篇文章我们就基于上篇文章带大家认识的有关序列的知识,继续讲解python中另一种常见的数据容器——元组:1,元组的特点2,元组的定义3,元组的常见操作方法个人简介:努力学习ing个人专栏:C语言入门基础以及python入门基础CSDN主页愚润求学每日鸡汤:日日行不怕千万里,时时做不惧千万事文章目录一
- 从零开始学C语言文件操作:理论与代码详解
愚润泽
C语言入门基础c语言开发语言语法文件操作
前言:本文主要讲解C语言中的基础文件操作个人简介:努力学习ing个人专栏:C语言入门基础CSDN主页愚润求学每日鸡汤:doitforjoyanddoitforever文件操作一、为什么要使用文件二、什么是文件三、二进制文件和文本文件四、文件的打开和关闭(一)流和标准流(二)文件指针(三)文件的打开与关闭函数五、文件的顺序读写六、文件的随机读写七、文件读取结束的判定(一)feof()函数1.文本文件
- 【RAG 论文】Program-of-Thoughts(PoT)提示:让 LLM 生成 Python 代码来解决复杂的数字计算问题
yubinCloud
LLMResearch自然语言处理人工智能语言模型算法
论文:ProgramofThoughtsPrompting:DisentanglingComputationfromReasoningforNumericalReasoningTasks⭐⭐⭐⭐TMLR2023Code:Program-of-Thoughts|GitHub论文速读文章提出了PoTPrompting方法,PoT可以看作是CoT(Chain-of-Thoughts)的改进,该方法通过生
- Pycharm使用-错误“PermissionError: [Errno 13] Permission denied”排查
mystonelxj
Python使用pycharmpython
文章目录问题说明排查过程问题初始管理员方式使用工具权限设定设置信息总结问题说明近期Pycharm运行python程序,提示出错信息“PermissionError:[Errno13]Permissiondenied”,各种尝试一番,总算是解决了,特此记录下留作备忘。排查过程问题初始相关代码时从github上获取的,在安装了相关的引用package后,在Pycharm中显示代码时正常的,运行相关py
- MySQL精选面试题
米二
mysql数据库oracle
文章目录1.sql优化2.数据库优化3.悲观锁和乐观锁4.共享锁与排他锁5.索引的目的是什么?6.B+Tree对比BTree的优点:6.1磁盘读写代价更低6.2查询速度更稳定且能存更多索引6.3B+树叶子节点两两相连增快区间访问7.聚簇索引和非聚簇索引的区别8.forupdate9.间隙锁GapLocks10.临键锁Next-KeyLocks11.MVCC是什么?1.sql优化对查询进行优化,应尽
- Python基础之字符串、数字类型和列表(二)
Hao想睡觉
python开发语言
Python基础之字符串、数字类型和列表(二)文章目录Python基础之字符串、数字类型和列表(二)1、常见的字符串API2、数字类型2.1整数(int)2.2浮点数(float)2.3布尔类型(bool)2.4复数类型(complex)3、列表3.1、列表创建3.2、列表运算3.3列表索引(访问)习题1、常见的字符串API方法的调用语法对象.方法名(参数)是"的"的意思常见API详见文档示例te
- AI Prompt 提示词工程入门指南:新手小白快速上手
机器学习司猫白
人工智能prompt
近年来,人工智能(AI)发展迅猛,特别是大语言模型(LLMs)(如ChatGPT、Claude、Gemini、Llama等)的广泛应用,让人们可以用自然语言与AI进行互动。而提示词工程(PromptEngineering),即如何设计有效的提示词,已经成为一项重要技能。本篇博客专为新手小白打造,帮助你快速掌握Prompt工程的基础,学会如何撰写高质量的提示词,让AI更精准地理解你的需求,并产出最优
- 快速从C过度C++(一):namespace,C++的输入和输出,缺省参数,函数重载
愚润泽
C++学习笔记c++开发语言c语言
前言:本文章适合有一定C语言编程基础的读者浏览,主要介绍从C语言到C++过度,我们首先要掌握的一些基础知识,以便于我们快速进入C++的学习,为后面的学习打下基础。这篇文章的主要内容有:1,命名空间namespace2,C++的输入和输出3,缺省参数4,函数重载个人简介:努力学习ing个人专栏:C++学习笔记CSDN主页愚润求学其他专栏:C语言入门基础,python入门基础,python刷题专栏快速
- python namedtuple默认值_可选关键字参数的namedtuple和默认值
weixin_39710041
pythonnamedtuple默认值
Python3.7使用默认值参数。>>>fromcollectionsimportnamedtuple>>>fields=('val','left','right')>>>Node=namedtuple('Node',fields,defaults=(None,)*len(fields))>>>Node()Node(val=None,left=None,right=None)或者更好的方法是使用新
- python可选参数和可变量参数_关于python:namedtuple和可选关键字参数的默认值
weixin_39620684
我正在尝试将一个longish中空的"data"类转换为一个命名的元组。我的班级目前如下:classNode(object):def__init__(self,val,left=None,right=None):self.val=valself.left=leftself.right=right在转换为namedtuple之后,看起来:fromcollectionsimportnamedtuple
- python os模块[zt]
weixin_34357962
python操作系统shell
pythonos模块(2008-07-0311:59:39)http://blog.sina.com.cn/s/blog_4e808acf01009uav.html标签:pythonos杂谈分类:pythonPython的标准库中的os模块包含普遍的操作系统功能。如果你希望你的程序能够与平台无关的话,这个模块是尤为重要的。即它允许一个程序在编写后不需要任何改动,也不会发生任何问题,就可以在Linu
- Java打包镜像部署的全景解析
程序员总部
javajava开发语言
在现代软件开发中,Java作为一种广泛使用的编程语言,赋予开发者强大的能力,能够轻松创建跨平台应用。随着云计算和微服务架构的普及,Java应用的打包与镜像部署变得愈发重要。今天,就让我们来聊聊如何高效地将Java应用打包成镜像并部署到生产环境。我们得了解Java应用的基本构建流程。Java应用通常使用Maven或Gradle等构建工具。Maven是一个流行的项目管理工具,通过XML配置文件来定义项
- 如何使用Python与MySQL数据库进行查询和更新操作?
程序员总部
python数据库pythonmysql
在当今的开发环境中,数据库操作是程序员日常工作的一部分。Python作为一种流行的编程语言,提供了众多库来简化与数据库的交互。MySQL,作为一种广泛使用的关系型数据库,尤其受欢迎。那么,如何用Python进行MySQL数据库的查询和更新呢?本文会详细介绍一下这个过程,包括如何设置环境、连接数据库以及进行基本的查询与更新操作。环境准备在开始之前,你需要确保你的计算机上安装了Python和MySQL
- Python3 os.path() 模块
kunkliu
#pythonpython
参考文章:https://www.runoob.com/python3/python3-os-path.htmlPython3OS文件/目录方法os.path模块主要用于获取文件的属性。以下是os.path模块的几种常用方法:方法说明os.path.abspath(path)返回绝对路径os.path.basename(path)返回文件名os.path.commonprefix(list)返回l
- python3中的os.path模块
hgz_dm
编程语言python3os.path
os.path模块主要用于获取文件的属性,这里对该模块中一些常用的函数做些记录。os.abspath(path):获取文件的绝对路径。这里path指的是路径,例如我这里输入“data.csv”[In]os.path.abspath('data.csv')[Out]'E:\\kaggle\\Titanic\\data.csv'os.path.basename(path):获取文件名称。该函数默认通过
- LLM Weekly(2025.02.17-02.23)
UnknownBody
LLMDailyLLMWeekly人工智能自然语言处理
本文是LLM系列文章,主要是针对2025.02.17-02.23这一周的LLM相关新闻与文章、GitHub资源分享。网络新闻Grok3Beta——推理代理的时代。Grok发布了Grok3Beta,通过强化学习、扩展计算和多模态理解提供卓越的推理能力。Grok3和Grok3mini在学术基准上取得了高分,其中Grok3在AIME’25上获得了93.3%的分数。Grok3的推理可通过“思考”按钮访问,
- 19.python常用库操作:OS模块详解
亦良Cool
Pythonpython开发语言
python中OS模块详解一、os模块介绍二、路径介绍三、常用方法详解3.1getcwd()方法——获取当前工作目录(字符串)3.2listdir()方法——返回指定路径下的目录名和文件名3.3makedirs()方法——递归创建目录3.4mkdir()方法——创建一级目录3.5removedirs()方法——递归删除目录3.6rmdir()方法——删除空目录3.7rename()方法——重命名文
- python中os.path模块
魏大橙
pythonpython
os.path模块是os模块根据系统类型从另一个模块导入的,并非由os模块实现1、os.path.abspath(相对路径)-----返回对应路径的绝对路径os.path.abspath(".")importos.pathprint(os.path.abspath("."))E:\python练习上一层路径“..”importos.pathprint(os.path.abspath(".."))E
- ASM系列四 利用Method 组件动态注入方法逻辑
lijingyao8206
字节码技术jvmAOP动态代理ASM
这篇继续结合例子来深入了解下Method组件动态变更方法字节码的实现。通过前面一篇,知道ClassVisitor 的visitMethod()方法可以返回一个MethodVisitor的实例。那么我们也基本可以知道,同ClassVisitor改变类成员一样,MethodVIsistor如果需要改变方法成员,注入逻辑,也可以
- java编程思想 --内部类
百合不是茶
java内部类匿名内部类
内部类;了解外部类 并能与之通信 内部类写出来的代码更加整洁与优雅
1,内部类的创建 内部类是创建在类中的
package com.wj.InsideClass;
/*
* 内部类的创建
*/
public class CreateInsideClass {
public CreateInsideClass(
- web.xml报错
crabdave
web.xml
web.xml报错
The content of element type "web-app" must match "(icon?,display-
name?,description?,distributable?,context-param*,filter*,filter-mapping*,listener*,servlet*,s
- 泛型类的自定义
麦田的设计者
javaandroid泛型
为什么要定义泛型类,当类中要操作的引用数据类型不确定的时候。
采用泛型类,完成扩展。
例如有一个学生类
Student{
Student(){
System.out.println("I'm a student.....");
}
}
有一个老师类
- CSS清除浮动的4中方法
IT独行者
JavaScriptUIcss
清除浮动这个问题,做前端的应该再熟悉不过了,咱是个新人,所以还是记个笔记,做个积累,努力学习向大神靠近。CSS清除浮动的方法网上一搜,大概有N多种,用过几种,说下个人感受。
1、结尾处加空div标签 clear:both 1 2 3 4
.div
1
{
background
:
#000080
;
border
:
1px
s
- Cygwin使用windows的jdk 配置方法
_wy_
jdkwindowscygwin
1.[vim /etc/profile]
JAVA_HOME="/cgydrive/d/Java/jdk1.6.0_43" (windows下jdk路径为D:\Java\jdk1.6.0_43)
PATH="$JAVA_HOME/bin:${PATH}"
CLAS
- linux下安装maven
无量
mavenlinux安装
Linux下安装maven(转) 1.首先到Maven官网
下载安装文件,目前最新版本为3.0.3,下载文件为
apache-maven-3.0.3-bin.tar.gz,下载可以使用wget命令;
2.进入下载文件夹,找到下载的文件,运行如下命令解压
tar -xvf apache-maven-2.2.1-bin.tar.gz
解压后的文件夹
- tomcat的https 配置,syslog-ng配置
aichenglong
tomcathttp跳转到httpssyslong-ng配置syslog配置
1) tomcat配置https,以及http自动跳转到https的配置
1)TOMCAT_HOME目录下生成密钥(keytool是jdk中的命令)
keytool -genkey -alias tomcat -keyalg RSA -keypass changeit -storepass changeit
- 关于领号活动总结
alafqq
活动
关于某彩票活动的总结
具体需求,每个用户进活动页面,领取一个号码,1000中的一个;
活动要求
1,随机性,一定要有随机性;
2,最少中奖概率,如果注数为3200注,则最多中4注
3,效率问题,(不能每个人来都产生一个随机数,这样效率不高);
4,支持断电(仍然从下一个开始),重启服务;(存数据库有点大材小用,因此不能存放在数据库)
解决方案
1,事先产生随机数1000个,并打
- java数据结构 冒泡排序的遍历与排序
百合不是茶
java
java的冒泡排序是一种简单的排序规则
冒泡排序的原理:
比较两个相邻的数,首先将最大的排在第一个,第二次比较第二个 ,此后一样;
针对所有的元素重复以上的步骤,除了最后一个
例题;将int array[]
- JS检查输入框输入的是否是数字的一种校验方法
bijian1013
js
如下是JS检查输入框输入的是否是数字的一种校验方法:
<form method=post target="_blank">
数字:<input type="text" name=num onkeypress="checkNum(this.form)"><br>
</form>
- Test注解的两个属性:expected和timeout
bijian1013
javaJUnitexpectedtimeout
JUnit4:Test文档中的解释:
The Test annotation supports two optional parameters.
The first, expected, declares that a test method should throw an exception.
If it doesn't throw an exception or if it
- [Gson二]继承关系的POJO的反序列化
bit1129
POJO
父类
package inheritance.test2;
import java.util.Map;
public class Model {
private String field1;
private String field2;
private Map<String, String> infoMap
- 【Spark八十四】Spark零碎知识点记录
bit1129
spark
1. ShuffleMapTask的shuffle数据在什么地方记录到MapOutputTracker中的
ShuffleMapTask的runTask方法负责写数据到shuffle map文件中。当任务执行完成成功,DAGScheduler会收到通知,在DAGScheduler的handleTaskCompletion方法中完成记录到MapOutputTracker中
- WAS各种脚本作用大全
ronin47
WAS 脚本
http://www.ibm.com/developerworks/cn/websphere/library/samples/SampleScripts.html
无意中,在WAS官网上发现的各种脚本作用,感觉很有作用,先与各位分享一下
获取下载
这些示例 jacl 和 Jython 脚本可用于在 WebSphere Application Server 的不同版本中自
- java-12.求 1+2+3+..n不能使用乘除法、 for 、 while 、 if 、 else 、 switch 、 case 等关键字以及条件判断语句
bylijinnan
switch
借鉴网上的思路,用java实现:
public class NoIfWhile {
/**
* @param args
*
* find x=1+2+3+....n
*/
public static void main(String[] args) {
int n=10;
int re=find(n);
System.o
- Netty源码学习-ObjectEncoder和ObjectDecoder
bylijinnan
javanetty
Netty中传递对象的思路很直观:
Netty中数据的传递是基于ChannelBuffer(也就是byte[]);
那把对象序列化为字节流,就可以在Netty中传递对象了
相应的从ChannelBuffer恢复对象,就是反序列化的过程
Netty已经封装好ObjectEncoder和ObjectDecoder
先看ObjectEncoder
ObjectEncoder是往外发送
- spring 定时任务中cronExpression表达式含义
chicony
cronExpression
一个cron表达式有6个必选的元素和一个可选的元素,各个元素之间是以空格分隔的,从左至右,这些元素的含义如下表所示:
代表含义 是否必须 允许的取值范围 &nb
- Nutz配置Jndi
ctrain
JNDI
1、使用JNDI获取指定资源:
var ioc = {
dao : {
type :"org.nutz.dao.impl.NutDao",
args : [ {jndi :"jdbc/dataSource"} ]
}
}
以上方法,仅需要在容器中配置好数据源,注入到NutDao即可.
- 解决 /bin/sh^M: bad interpreter: No such file or directory
daizj
shell
在Linux中执行.sh脚本,异常/bin/sh^M: bad interpreter: No such file or directory。
分析:这是不同系统编码格式引起的:在windows系统中编辑的.sh文件可能有不可见字符,所以在Linux系统下执行会报以上异常信息。
解决:
1)在windows下转换:
利用一些编辑器如UltraEdit或EditPlus等工具
- [转]for 循环为何可恨?
dcj3sjt126com
程序员读书
Java的闭包(Closure)特征最近成为了一个热门话题。 一些精英正在起草一份议案,要在Java将来的版本中加入闭包特征。 然而,提议中的闭包语法以及语言上的这种扩充受到了众多Java程序员的猛烈抨击。
不久前,出版过数十本编程书籍的大作家Elliotte Rusty Harold发表了对Java中闭包的价值的质疑。 尤其是他问道“for 循环为何可恨?”[http://ju
- Android实用小技巧
dcj3sjt126com
android
1、去掉所有Activity界面的标题栏
修改AndroidManifest.xml 在application 标签中添加android:theme="@android:style/Theme.NoTitleBar"
2、去掉所有Activity界面的TitleBar 和StatusBar
修改AndroidManifes
- Oracle 复习笔记之序列
eksliang
Oracle 序列sequenceOracle sequence
转载请出自出处:http://eksliang.iteye.com/blog/2098859
1.序列的作用
序列是用于生成唯一、连续序号的对象
一般用序列来充当数据库表的主键值
2.创建序列语法如下:
create sequence s_emp
start with 1 --开始值
increment by 1 --増长值
maxval
- 有“品”的程序员
gongmeitao
工作
完美程序员的10种品质
完美程序员的每种品质都有一个范围,这个范围取决于具体的问题和背景。没有能解决所有问题的
完美程序员(至少在我们这个星球上),并且对于特定问题,完美程序员应该具有以下品质:
1. 才智非凡- 能够理解问题、能够用清晰可读的代码翻译并表达想法、善于分析并且逻辑思维能力强
(范围:用简单方式解决复杂问题)
- 使用KeleyiSQLHelper类进行分页查询
hvt
sql.netC#asp.nethovertree
本文适用于sql server单主键表或者视图进行分页查询,支持多字段排序。KeleyiSQLHelper类的最新代码请到http://hovertree.codeplex.com/SourceControl/latest下载整个解决方案源代码查看。或者直接在线查看类的代码:http://hovertree.codeplex.com/SourceControl/latest#HoverTree.D
- SVG 教程 (三)圆形,椭圆,直线
天梯梦
svg
SVG <circle> SVG 圆形 - <circle>
<circle> 标签可用来创建一个圆:
下面是SVG代码:
<svg xmlns="http://www.w3.org/2000/svg" version="1.1">
<circle cx="100" c
- 链表栈
luyulong
java数据结构
public class Node {
private Object object;
private Node next;
public Node() {
this.next = null;
this.object = null;
}
public Object getObject() {
return object;
}
public
- 基础数据结构和算法十:2-3 search tree
sunwinner
Algorithm2-3 search tree
Binary search tree works well for a wide variety of applications, but they have poor worst-case performance. Now we introduce a type of binary search tree where costs are guaranteed to be loga
- spring配置定时任务
stunizhengjia
springtimer
最近因工作的需要,用到了spring的定时任务的功能,觉得spring还是很智能化的,只需要配置一下配置文件就可以了,在此记录一下,以便以后用到:
//------------------------定时任务调用的方法------------------------------
/**
* 存储过程定时器
*/
publi
- ITeye 8月技术图书有奖试读获奖名单公布
ITeye管理员
活动
ITeye携手博文视点举办的8月技术图书有奖试读活动已圆满结束,非常感谢广大用户对本次活动的关注与参与。
8月试读活动回顾:
http://webmaster.iteye.com/blog/2102830
本次技术图书试读活动的优秀奖获奖名单及相应作品如下(优秀文章有很多,但名额有限,没获奖并不代表不优秀):
《跨终端Web》
gleams:http