为您找到搜索结果:815个
openpyxl代码案例
importdatetimefromrandomimportchoicefromtimeimporttimefromopenpyxlimportload_workbookfromopenpyxl.utilsimportget_column_letter#设置文件mingcaddr="openpyxl.xlsx"#打开文件wb=load_workbook(addr)#创建一张新表ws=wb.create_sheet()#第一行输入ws.append(['TIME','TITLE','A-Z'])#输入内容(500行数据)foriinrange(500):TIME=datetime.datetime.now().strftime("%H:%M:%S")TITLE=str(time())A_Z=get_column_letter(choice(range(1,50)))ws.append([TIME,TITLE,A_Z])#获取最大行row_max=ws.max_row#获取最大列con_max=ws.max_column#把上面写入内容打印在控制台forjinws.rows:#we.row...
Robots协议(爬虫协议、机器人协议)
Robots协议(也称为爬虫协议、机器人协议等)的全称是“网络爬虫排除标准”(RobotsExclusionProtocol),网站通过Robots协议告诉搜索引擎哪些页面可以抓取,哪些页面不能抓取。____________________________________Robots协议也称为爬虫协议、爬虫规则、机器人协议,是网站国际互联网界通行的道德规范,其目的是保护网站数据和敏感信息、确保用户个人信息和隐私不被侵犯。“规则”中将搜索引擎抓取网站内容的范围做了约定,包括网站是否希望被搜索引擎抓取,哪些内容不允许被抓取,而网络爬虫可以据此自动抓取或者不抓取该网页内容。如果将网站视为酒店里的一个房间,robots.txt就是主人在房间门口悬挂的“请勿打扰”或“欢迎打扫”的提示牌。这个文件告诉来访的搜索引擎哪些房间可以进入和参观,哪些不对搜索引擎开放。____________________________________robots.txt(统一小写)是一种存放于网站根目录下的ASCII编码的...
爬虫与反爬虫
编者:本文来自携程酒店研发部研发经理崔广宇在第三期【携程技术微分享】上的分享,以下为整理的内容概要。墙裂建议点击视频回放,“现场”围观段子手攻城狮大崔,如何高智商&高情商地完美碾压爬虫。。。关注携程技术中心微信公号ctriptech,可第一时间获知微分享信息~你被爬虫侵扰过么?当你看到“爬虫”两个字的时候,是不是已经有点血脉贲张的感觉了?千万要忍耐,稍稍做点什么,就可以在名义上让他们胜利,实际上让他们受损失。一、为什么要反爬虫1、爬虫占总PV比例较高,这样浪费钱(尤其是三月份爬虫)。三月份爬虫是个什么概念呢?每年的三月份我们会迎接一次爬虫高峰期。最初我们百思不得其解。直到有一次,四月份的时候,我们删除了一个url,然后有个爬虫不断的爬取url,导致大量报错,测试开始找我们麻烦。我们只好特意为这个爬虫发布了一次站点,把删除的url又恢复回去了。但是当时我们的一个组员表示很不服,说,我们不能干掉爬虫,也就罢了,还要专门为它发布,这实在是太没面子了。于是出了个主意,说:url可以上,但是,绝对不给真实数据。于是我们就把一个静态文件发布上...
HBase与Sqoop集成案例
Step1、配置sqoop-env.sh如下: Step2、在Mysql中创建一张数据库library,一张表bookCREATEDATABASElibrary;CREATETABLEbook(idint(4)PRIMARYKEYNOTNULLAUTO_INCREMENT,nameVARCHAR(255)NOTNULL,priceVARCHAR(255)NOTNULL);Step3、向表中插入一些数据INSERTINTObook(name,price)VALUES('LieSporting','30');INSERTINTObook(name,price)VALUES('Pride&Prejudice','70');INSERTINTObook(name,price)VALUES('FallofGiants','50');完成后如图: Step4、执行Sqoop导入数据的操作$bin/sqoopimport--connectjdbc:mysql://hadoop-senior01.itguigu.com:3306/db_library--usernamero...
HBase与Hive交互操作案例
因为我们后续可能会在操作Hive的同时对HBase也会产生影响,所以Hive需要持有操作HBase的Jar,那么接下来拷贝Hive所依赖的Jar包(或者使用软连接的形式)。$exportHBASE_HOME=/opt/modules/cdh/hbase-0.98.6-cdh5.3.6/$exportHIVE_HOME=/opt/modules/cdh/hive-0.13.1-cdh5.3.6/$ln-s$HBASE_HOME/lib/hbase-common-0.98.6-cdh5.3.6.jar$HIVE_HOME/lib/hbase-common-0.98.6-cdh5.3.6.jar$ln-s$HBASE_HOME/lib/hbase-server-0.98.6-cdh5.3.6.jar$HIVE_HOME/lib/hbase-server-0.98.6-cdh5.3.6.jar$ln-s$HBASE_HOME/lib/hbase-client-0.98.6-cdh5.3.6.jar$HIVE_HOME/lib/hbase-client-0.98.6-cdh5.3.6.jar$l...
使用selenium爬虫抓取数据
写在前面本来这篇文章该几个月前写的,后来忙着忙着就给忘记了。ps:事多有时候反倒会耽误事。几个月前,记得群里一朋友说想用selenium去爬数据,关于爬数据,一般是模拟访问某些固定网站,将自己关注的信息进行爬取,然后再将爬出的数据进行处理。他的需求是将文章直接导入到富文本编辑器去发布,其实这也是爬虫中的一种。其实这也并不难,就是UI自动化的过程,下面让我们开始吧。准备工具/原料1、java语言2、IDEA开发工具3、jdk1.84、selenium-server-standalone(3.0以上版本)步骤1、分解需求:需求重点主要是要保证原文格式样式都保留:将要爬取文章,全选并复制将复制后的文本,粘贴到富文本编辑器中即可2、代码实现思路:键盘事件模拟CTRL+A全选键盘事件模拟CTRL+C复制键盘事件模拟CTRL+V粘贴3、实例代码importorg.junit.AfterClass;importorg.junit.BeforeClass;importorg.junit.Test;importorg.openqa.selenium.By;importorg.openqa.seleniu...
27_线程安全操作及其案例
01线程操作共享数据的安全问题*A:线程操作共享数据的安全问题如果有多个线程在同时运行,而这些线程可能会同时运行这段代码。程序每次运行结果和单线程运行的结果是一样的,而且其他的变量的值也和预期的是一样的,就是线程安全的。02售票的案例*A:售票的案例/**多线程并发访问同一个数据资源*3个线程,对一个票资源,出售*/publicclassThreadDemo{publicstaticvoidmain(String[]args){//创建Runnable接口实现类对象 Ticketst=newTickets();//创建3个Thread类对象,传递Runnable接口实现类 Threadt0=newThread(t); Threadt1=newThread(t); Threadt2=newThread(t);t0.start();t1.start();t2.start();}}publicclassTicketsimplementsRunnable{//定义出售的票源privateintticket=100;privateObjectobj=newObject();public...
实战案例-微博情感分析
数据:每个文本文件包含相应类的数据0:喜悦;1:愤怒;2:厌恶;3:低落步骤文本读取分割训练集、测试集特征提取模型训练、预测代码:tools.py#-*-coding:utf-8-*-importreimportjieba.possegaspsegimportpandasaspdimportmathimportnumpyasnp#加载常用停用词stopwords1=[line.rstrip()forlineinopen('./中文停用词库.txt','r',encoding='utf-8')]#stopwords2=[line.rstrip()forlineinopen('./哈工大停用词表.txt','r',encoding='utf-8')]#stopwords3=[line.rstrip()forlineinopen('./四川大学机器智能实验室停用词库.txt','r',encoding='utf-8')]#stopwords=stopwords1+stopwords2+stopwords3stopwords=stopwords1defproc_text(raw_line):"...
世界高峰实战案例
参考:https://www.kaggle.com/alex64/d/abcsds/highest-mountains/let-s-climbimportpandasaspdimportmatplotlib.pyplotaspltfrommatplotlibimportstylestyle.use('ggplot')#设置图片显示的主题样式#解决matplotlib显示中文问题plt.rcParams['font.sans-serif']=['SimHei']#指定默认字体plt.rcParams['axes.unicode_minus']=False#解决保存图像是负号'-'显示为方块的问题dataset_path='./dataset/Mountains.csv'defpreview_data(data):"""数据预览"""#数据预览print(data.head())#数据信息print(data.info())defproc_success(val):"""处理'Ascentsbef.2004'列中的数据"""if'>'instr(val):return200elif'...
Spring事务传播性案例
前言大家好,我是哪吒!最近在重新整理Spring事务相关的内容,在看Spring事务传播行为这块内容的时候,发现了这篇优秀的文章,分享一下。Spring在TransactionDefinition接口中规定了7种类型的事务传播行为。事务传播行为是Spring框架独有的事务增强特性,他不属于的事务实际提供方数据库行为。这是Spring为我们提供的强大的工具箱,使用事务传播行可以为我们的开发工作提供许多便利。但是人们对他的误解也颇多,你一定也听过“service方法事务最好不要嵌套”的传言。要想正确的使用工具首先需要了解工具。本文对七种事务传播行为做详细介绍,内容主要代码示例的方式呈现。事务传播行为用来描述由某一个事务传播行为修饰的方法被嵌套进另一个方法的时事务如何传播。用伪代码说明:publicvoidmethodA(){methodB();//doSomething}@Transaction(Propagation=XXX)publicvoidmethodB(){//doSomething}代码中methodA()方法嵌套调用了methodB()方法,methodB()的事务传播行为由...
JavaWeb中filter的详解及应用案例
一:Filter介绍 Filter可认为是Servlet的一种“变种”,它主要用于对用户请求(HttpServletRequest)进行预处理,也可以对服务器响应(HttpServletResponse)进行后处理,是个典型的处理链。它与Servlet的区别在于:它不能直接向用户生成响应。完整的流程是:Filter对用户请求进行预处理,接着将请求交给Servlet进行处理并生成响应,最后Filter再对服务器响应进行后处理。二:Filter的几个用处 在HttpServletRequest到达Servlet之前,拦截客户的HttpServletRequest。 根据需要检查HttpServletRequest,也可以修改HttpServletRequest头和数据。 在HttpServletResponse到达客户端之前,拦截HttpServletResponse。 根据需要检查HttpServletResponse,也可以修改HttpServletResponse头和数据。三:Filter的种类 用户授权的Filter:Filter负责检查用户请求,根据请求过...
麦肯锡案例分析框架
答案是:50个,如果质量非常高,30个这是Uni酱调研了30位麦肯锡顾问的结果是不是很惊悚,你左边的无公害同桌此时可能正在小黑屋加速练Case但是真实情况就是有的人过分看重框架有的人根本不知道所谓的咨询回答居然还需要一个东西叫做“逻辑框架”今日重磅福利微信后台回复“逻辑”即可获得:文字稿整理麦肯锡分析框架精华版典藏版LookOverMyShoulder的教学音频德勤2018笔试面试精华+原创案例面经独家2016-2018四大群面案例及面经总结最新2018年四大全球网申OT最新题库华为/腾讯/IBM等知名企业17-18面经合集2000字总结面试十大肢体语言错误10万字汇丰/宝洁/阿里巴巴管培生面经 01怎样把一个案例和框架结合首先,框架不是万能的,但是没有框架是万万不能的,不管是咨询界面试还是四大群面亦或者金融群面,框架是整个案例的灵魂,如果框架都选错了,那么你的面试英文再溜,也是OUT的结局。那么麦肯锡是如何进行框架搭建的呢?以下总结了11条:(主要针对大Case不是Pretalk的小Case,完整版请自行领取) 1.做大Case前准备三张纸:事先编上号码Page1...
写完百行代码,一次运行全部案例通过 是什么体验?
刚毕业时,特别担心控制台看到红色的报错,一看到红色报错我就好紧急,因为看到了不会解决。到后来每次处理一个报错,就记录下来。再到后来。看到任何报错,淡然处之,并能一一解决掉。现在写完100行逻辑处理的代码,然后一遍运行,全部测试案例通过。 不过,当现在看不到什么bug时,写代码已无法满足追求技术的心以及这个充满机遇和挑战的行业对于一个从行者的要求了。这么多年学生生涯,基本一直是处于领先的,超前的,多么希望自己几年前就达到这个水准,那么现在我应该处于我当前的年限是领先的,我热爱技术,然而并没有什么优势。我不爱交际,人们却看到了我的表达能力和沟通能力不错。呵呵,(关于这点,我内心想知道两个问题,1.是不是我没什么技术优势了,所以也只剩下表达沟通能力可以罗列一下了?为自己得不到别人关于技术方面的赞美感觉而惭愧.2.表达能力,沟通能力作为成为一个高手,或者比较强的能力的人 占比有多重?) 综其以上的结果分析原理技术是一个需要持续性花费时间积累且持续性关注的一个东西,近两三年有很多松懈机遇,环境的影响和改变,没有遇到一个足以对我技术挑战特别大的工作。虽小有...
kafka拦截器原理|案例实操
Producer拦截器(interceptor)是在Kafka0.10版本被引入的,主要用于实现clients端的定制化控制逻辑。对于producer而言,interceptor使得用户在消息发送前以及producer回调逻辑前有机会对消息做一些定制化需求,比如修改消息等。同时,producer允许用户指定多个interceptor按序作用于同一条消息从而形成一个拦截链(interceptorchain)。Intercetpor的实现接口是org.apache.kafka.clients.producer.ProducerInterceptor,其定义的方法包括:(1)configure(configs)获取配置信息和初始化数据时调用。(2)onSend(ProducerRecord):该方法封装进KafkaProducer.send方法中,即它运行在用户主线程中。Producer确保在消息被序列化以计算分区前调用该方法。用户可以在该方法中对消息做任何操作,但最好保证不要修改消息所属的topic和分区,否则会影响目标分区的计算(3)onAcknowledgement(RecordMet...
6.3_代码案例
代码案例:importrecsys.algorithmrecsys.algorithm.VERBOSE=Truefromrecsys.algorithm.factorizeimportSVDfromrecsys.datamodel.dataimportDatafromrecsys.evaluation.predictionimportRMSEimportos,systmpfile="/tmp/movielens.zip"moviefile="./ml-1m/movies.dat"classRecommendSystem(object):def__init__(self,filename,sep,**format):self.filename=filenameself.sep=sepself.format=format#训练参数self.k=100self.min_values=10self.post_normalize=Trueself.svd=SVD()#判断是否加载self.is_load=False#添加数据处理self.data=Data()#添加模型评估self.rmse=R...