
Python
文章平均质量分 68
李奇峰1998
吾生也有涯,而知也无涯
展开
-
RabbitMq连接Java与Python
最近用Python写了一个爬虫项目,为了方便,用Java做了一个控制端,然后用RabbitMq将他们串起来首先Java端的代码,生产者与消费者都采用的单例模式,其中消费者在tomcat启动时自动进行消费。话不多说,上代码//消费者public class ScrapyRabbitCon{ //队列名 private final static String QUEUE_NAME ...原创 2019-02-07 18:05:20 · 1639 阅读 · 0 评论 -
python实现KNN(最近邻)算法
KNN(近邻)算法KNN算法可能是标准数据挖掘算法中最为直观的一种。为了对新个体进行分类,它查找训练集,找到与新个体最相似的那些个体,看看这些个体大多属于哪个类别,就把新个体分到哪个类别 KNN算法几乎可以对任何数据集进行分类,但是,要计算数据集中每两个个体之间的距离,计算量很大数据集选取本次数据集选用电离数据,该数据集每行有35个值,前34个为天线采集的数据,最后一个值不是“g...原创 2018-09-10 19:28:53 · 2568 阅读 · 0 评论 -
离线数据清洗,Spark和Python Pandas对比
导语最近新学习了Spark中RDD的核心用法,为了巩固学习成果,于是使用Spark写了一个数据清洗的代码,正好之前使用过python中pandas对同样的数据做数据清洗,于是就把两种方式的代码都贴出来,做一个简单的对比数据展示豆瓣图书标签: 小说,[日] 东野圭吾 / 李盈春 / 南海出版公司 / 2014-5 / 39.50元,解忧杂货店,8.6,(297210人评价)豆瓣图书标签...原创 2018-08-27 10:40:08 · 2746 阅读 · 5 评论 -
高效代码之我见 => 李奇峰
还有一个月结束大二生活,以下仅为本人自大一从一个小白开始学习,至今不到两年的学习与工作当中总结的一些经验与见解。不足之处请在评论区留言,望多多指教项目构思与详细设计遇到需求后先梳理清楚大体的逻辑,接下来构思项目结构与流程。最好可以将构思结果落到概要设计与详细设计中,这样在写代码的时候才会更加流畅。 以前在写代码的时候往往脑子里有一个雏形就开始动手,到后来随之项目的不断推进和完善,就发...原创 2018-06-15 10:04:35 · 698 阅读 · 2 评论 -
python数据模型与特殊方法
数据模型简介在python官方文档中对于数据模型是这样介绍的 对象是Python对数据的抽象。Python程序中所有数据都由对象或对象之间的关系表示。在某种意义上,为了和冯诺依曼存储程序计算机模型保持一致,代码和数据一样也是一个对象(冯诺依曼模型中提到,数据和程序都以0,1存储于存储器中)简单的说,Python中的一切数据要么是对象,要么和对象有关系如果你带着来自其他面向对象...原创 2018-06-13 21:11:03 · 353 阅读 · 0 评论 -
Python根据dict动态创建mysql表并写入数据
import pymysqlfrom scrapy.conf import settingsclass DataToMysql: def __init__(self, host, user, passwd, db, port): try: self.conn = pymysql.connect(host=host, user=user, pa...原创 2018-06-13 12:34:06 · 5009 阅读 · 3 评论 -
基于scrapy与xslt的通用爬虫框架
框架简述此框架基于scrapy框架与xslt技术构建,通过一个包含xslt样式和xpath语法的xml文件来对网页上的内容进行匹配,然后将匹配到的字段与内容做持久化存储。 其中,在xml文件的编辑中可以定义网页深度和下一级链接,并且匹配到的网页内容可以在不同深度之间进行传递。 其次,代码在入库的时候回根据网页中匹配到的字段和内容自动创建数据库,并且写入数据。...原创 2018-06-10 13:17:37 · 1190 阅读 · 1 评论 -
python将kafka数据写入memcache
import jsonimport memcachefrom kafka import KafkaConsumerclass KafkaToMemcache: def __init__(self, topic, kafka_host): self.memcache = memcache.Client(['127.0.0.1:11211']) s...原创 2018-04-27 13:49:10 · 420 阅读 · 0 评论 -
Python爬虫模拟登陆知乎
在爬取一些网页的时候,往往有些网页的内容是需要登陆才可以获取的,这个时候我们就需要用到模拟登陆。 一开始搞模拟登陆的时候,我尝试过使用selenium的模拟点击,但是感觉那样太麻烦,一是每个网页都需要写特定的规则,而是耗时太长,效率太低。第三个就是验证码。 所以还是安安心心的用post请求吧# coding=UTF-8import reimport requestsfrom bs4 imp原创 2017-11-28 09:11:12 · 445 阅读 · 0 评论 -
利用Python和Redis构建一个免费的代理池
当我们使用爬虫大量重复的请求一个网站时,我们可能回去到封IP的情况,这时候我们就需要使用代理来伪装我们的IP,使之请求能够再次发起代理池的整体构造代理IP来源:各大代理IP网站代理IP的获取:python爬虫代理池的存储:redis数据库代理IP检测:构建请求,检测是否可用调度器:负责统筹调度以上各功能的执行调度器:Scheduler类调度器本身不具有任何具体功能,他只是负责调用已经存在的原创 2017-11-27 18:14:03 · 3134 阅读 · 2 评论 -
Python中单线程、多线程与多进程的效率对比实验
Python是运行在解释器中的语言,查找资料知道,python中有一个全局锁(GIL),在使用多进程(Thread)的情况下,不能发挥多核的优势。而使用多进程(Multiprocess),则可以发挥多核的优势真正地提高效率。对比实验资料显示,如果多线程的进程是CPU密集型的,那多线程并不能有多少效率上的提升,相反还可能会因为线程的频繁切换,导致效率下降,推荐使用多进程;如果是IO密集型,多线程进程可转载 2017-11-07 11:53:31 · 300 阅读 · 0 评论 -
Python selenium使用总结
简介以及安装:selenium作为一个自动化的测试工具,主要用于web页面的测试,在Python爬虫中,我们可以使用此工具来对网页元素进行操作,例如启动浏览器,打开网页,前进与后退,定位元素,键盘输入与鼠标点击操作等。可以说,只要在浏览器能够进行的操作,我们都可以用selenium来实现 OK,首先我们需要先安装selenium 如果你的电脑上安装了Python和pip的话,我们只需要调用原创 2017-10-11 08:14:16 · 469 阅读 · 0 评论 -
用Python爬取百度贴吧中的图片
首先,我理解中的爬虫就是一个网页抓取工具和信息筛选工具的集合。 其中的工作原理无非就是首先获取到网页的源码,然后再通过筛选工具,将想要的信息筛选出来,这样就成了以下为程序的源代码__author__ = 'Liqifeng'# -*- coding:utf-8 -*-from urllib import requestimport urllibimport reimport os#爬取贴吧原创 2017-09-13 23:15:07 · 398 阅读 · 0 评论