自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(33)
  • 收藏
  • 关注

原创 协程+selenium爬取京东,保存为txt文件

协程用的不多,但是也是实现并发的一种方式,协程的特点是,在执行的过程中,如果遇到需要等待的时候,会自动切换到另外一个协程中执行,本次是用协程的特点,实现一个并发的爬虫。首先,创建一个协程执行的函数,如:函数参数的含义:url : 爬取的网站连接start:爬取的起始页(每个协程中爬取的起始页都不相同)end:爬取的终止也页(同上)file:爬取的数据存储的文件在主函数(main)中创建五个协程:H...

2018-05-17 21:16:39 1614

原创 Scrapy+Mysql实现的一个小项目,爬取新片场中的小视频的内容

本项目爬取的是新片场的小视频,起始的url为: http://www.xinpianchang.com/channel/index/sort-like总共有三层页面,分别是:1、首页面,如下:2、视频的详细页面,如下:3、创作者的页面,如下:该项目实现的就是把这三层页面中重要的信息都爬取下来,然后保存到mysql数据库,代码如下(呈现的主要是spider类中的代码):import jsonimp...

2018-05-14 20:42:29 2492 1

原创 windos下启动redis出现:No such file or directory错误的解决

之所以会出现这个问题,是因为redis服务器已经启动了,可以输入如图的命令进行测试redis-cli是启动redis的客户端,如果没有把配置环境变量,就需要进入到redis的安装目录下才能运行此命令,要不然会出错。如果在redis的客户端输入ping,能够返回PONG,就证明redis服务器已经启动了。但是如果需要看到如下图所示的界面才放心的读者,可以按照图片下面的操作进行:可以按照以下的命令进行...

2018-04-13 12:01:41 12513 3

原创 python+selenium+PhantomJS爬取唯品会

由于唯品会是利用js动态生成html作为反爬机制,所以不能用以前的爬取html的方法进行爬取,本程序是用selenium+PhantomJS对唯品会进行爬取,可以根据需要输入要爬取的商品,还有爬取的起始页和结束页。程序代码以及注释的内容如下:from time import sleepimport osfrom selenium import webdriverfrom urllib imp...

2018-04-10 16:49:19 1319

原创 Python爬取智联招聘职位信息

from urllib import requestfrom urllib import parsefrom bs4 import BeautifulSoupimport csv# 管理json数据的模块的import json# 定义智联的爬虫类class ZhiLianSpider(object): def __init__(self,url,area,job,star...

2018-04-09 12:00:23 1105

原创 Flask第一天学习

import timefrom flask import Flask, render_template, request, make_response, redirect, url_for, abort, sessionfrom flask_script import Manager# 导入蓝本from user import user#注册appapp = Flask(__name__)# 前面...

2018-03-26 20:23:40 431

原创 Ubuntu16中的常用命令详解

2、常用的命令 (1)、安装软件和卸载软件 安装:sudoapt install 软件名 卸载:第一种:sudoapt remove 软件名 第二种:sudoapt --purge remove 软件名 这两种的区别在于第一种只是仅仅的卸载软件,而对于该软件的配置文件还是会保存在系统里 第二种方式不仅会把软件卸载,还会把该软件相应的配置文件等等相关的文件删除。 ...

2018-03-03 15:10:29 499

原创 Ubuntu16中修改了/etc/passwd后只能以客人身份登录问题的解决

如果在使用Ubuntu的过程中,想通过修改/etc/passwd中自己对应的用户的权限为0来提高用户权限的,在重启之后只能通过客人会话登录Ubuntu了,别慌,解决方法如下:1、在客人会话登录页面 按 Ctrl+Alt+F1(不同类型的电脑可能不同,一般都是F1-F6)2、输入你原来的用户名,回车,输入密码3、运行命令 sudo vim /etc/passwd4、把自己对应的用户名后的0都改为10...

2018-03-01 21:23:48 3323 2

原创 Ubuntu16上安装NFS文件系统

  (1)、安装服务端       打开终端(快捷方式 Shift+Alt+t),输入命令 sudo apt install nfs-kernel-server       安装完成后,就配置分享的文件           sudo vim /etc/exports (nfs的配置文件)       如果Ubuntu中还没有安装vim的,运行上面的命令会出现错误,则需要执行以下的命令       ...

2018-02-28 13:48:32 248

原创 Win10+Ubuntu16强制删除Ubuntu所在的盘后出现grub rescue 问题的解决方法

当电脑上安装了win10+Ubuntu的双系统时,加入不小心在win10系统中删除或者格式化了Ubuntu所在的盘时,重新启动会出现以下的错误,导致一直无法重新启动电脑解决如下,准备一个U盘启动盘(PE系统)的,把U盘插进电脑后,重新启动,选则PE系统进入,然后再进入修复系统引导点击自动修复,等待一会,直到修复完成,然后关机,拔掉U盘,重新启动,就可以重新进入Ubuntu的安装引导了...

2018-02-28 12:57:27 5289 2

原创 Python线程编程已及内存共享问题

from threading import Threadimport threading"""问题:多线程共享内存问题,当多个线程操作同一个数据的时候,就会出现数据错乱的问题例: (1)num += 2 -----> num = num + 2 实际会操作两步 会先执行 num + 2, 并放到临时存储区 如果此时跳到了 (2)num += 5 -----

2018-02-06 21:38:26 867

原创 Python线程池编程和参数的传递

from time import sleepimport threadpooldef eat(a,b,c): print("%s请%s吃%s"%(a,b,c)) sleep(2)"""线程中的传参形式[(args,kwargs),(args,kwargs)]"""if __name__ == '__main__': #线程1 # value

2018-02-06 21:36:28 4294

原创 Python的进程池编程

from multiprocessing import Pooldef function(i): # print("%d子进程%d开启:"%(i,os.getpid())) # # sleep(random.choice([2,4,6,8])) # # print("%d子进程%d结束:"%(i,os.getpid())) print(10+2

2018-02-06 21:35:08 197

原创 Python实现爬取京东网页的图片

import randomfrom urllib import requestimport reimport osimport timeimport threadpooldef getAmason(i,j): agentsList = [ "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KH

2018-02-06 21:33:41 687

原创 javascript实现表格的动态添加

在开发的过程中,可能需要实现表格的动态添加,例如在大学里的选课系统,当学生选择了一门课后,按下确定键后会实时在表格相应的位置打印一行选课信息表,这就是表格的动态添加,不多说废话了,直接上代码,在代码中会把思路和过程以注释的方式写在嵌套在代码中,希望各位看官请勿介意://定义一个动态添加表格的数据function SaveData(){//我主要是实现一个用户表的

2018-02-04 15:37:18 512

原创 JavaScript利用计时器实现进度条(练习)

var intervalId;var count = 0;var widthNum = 0;onload=function () {var twoDiv = document.getElementById("two");var threeDiv = document.getElementById("three");intervalId = setInterval(funct

2018-02-03 15:52:19 1682 1

原创 JavaScript实现计时器,一个按钮实现开始和停止的功能

var intervalId;var i = 0;var count=0;function startTime(){var hour = document.getElementById("hour");var minute = document.getElementById("minute");var second = document.getElementById("se

2018-02-03 15:50:25 13026 2

原创 JavaScript数组的操作

创建一个空的数组var arr = new Array();创建长度为5的空的数组,只有一个元素时,会把这个元素当成数组的长度,从而创建一个长度为该元素的值的数组。 如果只有一个元素,而该元素又不是整型的数字时,会出现错误"Uncaught SyntaxError: Unexpected token ILLEGAL"var arr = new Array(5);如果有多个参数,

2018-02-01 20:30:23 320

原创 MongoDB的基础语句

1.启动mongodb服务,并设置数据存放位置   1.切换到对应为mongodb的bin目录位置(我的是在E盘)1.切换盘符 e: 2.cd E:\mongodbinstall\bin 切换到bin目录   2.启动并设置mongodb数据的存放位置       1.格式: mongod--dbpath=数据存放位置       2.mongod.exe --dbpath

2018-01-30 21:18:02 855

原创 MySQL基础语句

1.mysql的基本操作    1.开启mysql数据库服务      格式: net start mysql      如: net start mysql57    2.关闭mysql数据库服务      格式: net stop mysql      如:  net stop mysql57        3.登陆mysql服务      格式: mysq

2018-01-30 21:12:12 370

原创 Python列表的一个异常现象

设有列表如下:numlist=[1,2,3,4,5,6,7,8,9,10]当进行遍历并打印时,如下:for i in numlist: print(i,end=" ")结果如下:但是经过以下的操作:for i in numlist: if i == 5:  numlist.remove(i)print(i)此时输出的结果确是:

2018-01-29 21:40:08 1611

原创 Python中的类属性和对象属性的区别详解

为了能够更好的解释类属性和对象属性的区别,先创建类People和两个对象student1和student2如下:class People(object):    # 类属性是指定义在类的内部而且在方法的外部的属性    money = 10000    def __init__(self,name,age,gender=1):        # 对象属性是指定义在方法的内部

2018-01-28 15:36:42 15707 6

原创 Python中copy和deepcopy的区别,以及编程实现deepcopy的功能

在python中,有浅复制copy()和深度复制deepcopy(),这两个的区别我用以下的例子来说明,例如:numlist=[[1,2,[3,4,5]],34,"haha",{"name":{"fistname":"孙","lastName":"悟空"}}]设  numlist1 = copy(numlist),numlist1是numlist经过浅复制后得到的一个列表,设  n

2018-01-26 20:07:27 1623 4

原创 Python实现快速排序

"""快速排序的思路:numlist = [6, 8, 1, 4, 3, 9, 5, 4, 11, 2, 2, 15, 6]1、设keys(又称为监视哨)等于numlist=[0],i等于0,j等于len(numlist)-1,即如下: numlist = [6, 8, 1, 4, 3, 9, 5, 4, 11, 2, 2, 15, 6] |

2018-01-25 21:19:58 283

原创 Python中通过163邮箱发送邮件

#与邮件发送有关的模块import smtplib#在设置邮件的主题、内容时需要用到的模块from email.mime.text import MIMEText#163邮箱的服务器地址,如果需要实现用其它邮箱实现发送#邮件,这里需要改为其它邮箱的服务器地址mail163Server = "smtp.163.com"#163邮箱的端口mailPort = 25#163邮箱的

2018-01-17 17:28:36 871

原创 Python中的TCP编程,实现客户端与服务器的聊天(socket)

1、在TCP中,客户端的实现流程:(1)、创建客户端的socket对象   (2)、建立与服务器之间的联系  (3)、发送请求  (4)、接收数据  (5)、关闭连接2、服务端的实现流程:(1)、创建服务端的socket对象  (2)、绑定服务端的地址 (3)、设置监听器 (4)、等待客户端的连接 (5)、接收客户端的请求  (6)、返回处理的结果到客户端3、在TCP编程中,客户端

2018-01-15 18:52:25 13310 9

原创 Python正则表达式的基础知识回顾

Python正则表达式的基础知识点

2018-01-14 13:54:01 302

原创 Python字符串部分函数(上)

len():返回对象(字符串、列表、元组)的长度或者个数lower():把字符串中的所有大写字母转换成小写upper():把字符串中的所有小写字母转换成大写swapcase():把字符串中的所有小写字母转换成大写,所有大写字母转换成小写capitalize():把字符串中的第一个字母转换成大写,其余字母均为小写title():把字符串中的所有单词的第一个字母转换

2018-01-09 21:36:12 618

原创 Python利用列表深度遍历目录、复制文件

Python3中利用列表深度遍历目录、复制文件

2018-01-09 20:17:57 370

原创 Python利用队列广度遍历、复制文件

Python中,利用队列进行广度遍历目录、复制文件

2018-01-09 20:07:45 335

原创 Python利用递归实现文件的复制

import osimport timefrom collections import deque"""利用递归实现目录的遍历@para sourcePath:原文件目录@para targetPath:目标文件目录"""def getDirAndCopyFile(sourcePath,targetPath): if not os.path.exists(sourc

2018-01-08 21:20:19 2132

原创 Python中copy()和deepcopy()的区别

copy:在python中,copy是属于浅复制,什么是浅复制呢?也就是在复制的时候复制了对象的本身,但是对于对象中所引用的对象没有复制,所谓的对象所引用的对象就相当于列表的嵌套,即列表中有一些元素又是列表,例如:list=[[1,2,3],2,3,4,5]list中有一个元素是[1,2,3],那么[1,2,3](设为list1)就相当于list所引用的一个对象:当有表达式:  lis

2018-01-07 23:26:16 375

原创 Python利用time,字典,列表解析歌词

类似于酷狗上听歌时相应的时间显示相应的歌词

2018-01-06 15:02:15 279

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除