自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

三人行必有我师的博客

这是我的学习加油站,愿与奋战在AI道路上的伙伴交流、探讨、学习

  • 博客(104)
  • 资源 (14)
  • 收藏
  • 关注

原创 re匹配中文格式的字符

>>> import re>>>> s ='wo我爱sjl上学吧hfks'>>> res = re.findall(r'([\u2E80-\u9FFF]+)', s)>>> res['我爱', '上学吧']

2019-05-13 10:21:47 1636

原创 容器数据卷

1.docker运行关闭后的实现数据持久化:用容器数据卷保存2.容器之间共享信息:用容器数据卷保存3.卷中的更改可以直接生效4.数据卷中的更改不会包含在image的更新中5.数据卷中的生产周期一直持续到没有容器使用他为止6.容器与宿主机可以共享交互数据。容器内添加:1.命令添加:docker run -it -v /宿主机绝对路径目录:/容器内目录 镜像名示例:在...

2019-05-03 19:52:41 359

原创 docker容器命令

新建并启动容器:docker run [ 启动方式] image交互启动方式(返回对话窗口或命令行终端):docker run -it --name 新起的容器名字 IMAGE_ID以tomcat为例子:指定端口:前台方式:docker run -it -p 8888[把docker暴露的端口设置为8888]:8080[容器默认的暴露的端口]--name 新起的容器名字 tomc...

2019-05-03 18:00:37 560

原创 docker镜像命令

docker images -a:列出镜像的所有层;docker images -q:列出镜像的imageID;docker images -qa:列出镜像的所有层的imageID;(可以用于批处理删除);docker images --digest:列出镜像的摘要信息;docker search tomcat:dockerhub上查找某个镜像比如tomcat;docker p...

2019-05-03 16:37:54 200

转载 scrapy_redis 和 docker 实现简单分布式爬虫

简介在使用 scrapy 爬取 IT桔子公司信息,用来进行分析,了解 IT 创业公司的一切情况,之前使用 scrapy 写了一个默认线程是10的单个实例,为了防止被 ban IP 设置了下载的速度,3万多个公司信息爬了1天多才完成,现在想到使用分布式爬虫来提高效率。源码githup技术工具:Python3.5 scrapy scrapy_redis redis docker1.12 d...

2019-04-28 16:09:42 659

原创 多进程抓取猫眼电影top100

import jsonfrom multiprocessing import Poolimport requestsfrom requests.exceptions import RequestExceptionimport re#构造函数,输入一个url网址,发送请求后返回该网址的响应结果def get_one_page(url): try: respo...

2019-04-11 17:21:22 313

原创 抓取阿里云产品明细

import reimport csvfrom fake_useragent import UserAgentfrom urllib.request import Request,urlopen# 4种产品,16个地区,td的结构是:[产品_地区1--高可用版--金融版--基础版--]-[产品_地区2--高可用版--金融版--基础版-]-[产品_地区3-高可用版--金融版---基础版-...

2019-04-11 17:06:27 244

原创 链家二手房信息抓取

spider如下:# -*- coding: utf-8 -*-import scrapyclass LianjiaSpider(scrapy.Spider): name = 'lianjia' allowed_domains = ['lianjia.com'] start_urls = ['https://bj.lianjia.com/ershoufang/...

2019-04-11 09:36:47 355

原创 51job网站抓取所有的nlp职位信息

spider如下:# -*- coding: utf-8 -*-import scrapyfrom scrapy.linkextractors import LinkExtractorfrom scrapy.spiders import CrawlSpider, Ruleclass JobSpider(CrawlSpider): name = 'job' all...

2019-04-11 09:32:33 235

原创 提取亚马逊所有的商品类目与对应的url,保持层级关系

spider文件如下:# -*- coding: utf-8 -*-import scrapyimport reclass GoodsclassnameUrlSpider(scrapy.Spider): name = 'GoodsClassName_Url' allowed_domains = ['amazon.com'] start_urls = ['htt...

2019-04-11 09:17:47 3271

原创 高校项目

spider文件如下:import scrapyimport refrom Gaoxiao.items import GaoxiaoItemclass GaoxiaoSpider(scrapy.Spider): name = 'gaoxiao' allowed_domains = ['in985.com'] start_urls = [['https://w...

2019-04-10 11:02:00 319

原创 re 中括号的匹配[ ]需要加双斜杠\\

中括号的匹配需要在中括号前面加双斜杠\\

2019-03-27 15:06:33 1954 2

原创 DEPTH_PRIORITY实现深度优先爬取

DEPTH_PRIORITY默认: 0范围: scrapy.spidermiddlewares.depth.DepthMiddleware用于根据深度调整请求优先级的整数:如果为零(默认),则不从深度进行优先级调整正值将降低优先级,即,较高深度请求将被稍后处理 ; 这通常用于做广度优先爬网(BFO)负值将增加优先级,即,较高深度请求将被更快地处理(DFO)...

2019-03-25 14:39:27 1268

原创 多进程爬虫效果展示

import requestsimport reimport timefrom multiprocessing import Poolheaders = { 'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.112 ...

2019-03-21 16:21:43 216

原创 Scrapy-redis实现分布式

scrapy-redi重写了scrapy一些比较关键的代码,将scrapy变成一个可以在多个主机上同时运行的分布式爬虫。scrapy-redis工程的主体还是是redis和scrapy两个库,工程本身实现的东西不是很多,这个工程就像胶水一样,把这两个插件粘结了起来。scrapy-redis所实现的两种分布式:爬虫分布式以及item处理分布式。分别是由模块scheduler和模块pipeli...

2019-03-18 11:15:28 249

原创 list保存到scv

import csvdatas = [['俄罗斯', '1707'], ['加拿大', 997], ['中国', 960,111], ['美国', '936']]with open('country.csv', 'w') as csvfile: writer = csv.writer(csvfile) for row ...

2019-03-13 18:10:33 675

原创 re.complie()方法中嵌套的括号

s = "adfad asdfasdf asdfas asdfawef asd adsfas " 规则一:当给出的正则表达式中带有多个括号时,列表的元素为多个字符串组成的tuple,tuple中字符串个数与括号对数相同,字符串内容与每个括号内的正则表达式相对应,并且排放顺序是按括号出现的顺序。如下面两个例子。reObj1 = re.compile('((\w+)(\s)(\w+))') #带...

2019-03-13 11:01:04 1668

原创 str去除全部空格

4:replace()方法,可以去除全部空格# replace主要用于字符串的替换replace(old, new, count)>>> a = " a b c ">>> a.replace(" ", "")'abc'5: join()方法+split()方法,可以去除全部空格# join为字符字符串合成传入一个字符串列表,split..

2019-03-11 19:10:29 1563

原创 Python编码转换:\u5168\u7403\u7ecf\u5178IT\u6570\u7801\u6392\u884c\u699c

decode("unicode_escape")print u'\u5168\u7403\u7ecf\u5178IT\u6570\u7801\u6392\u884c\u699c'.encode('utf-8')

2019-03-11 14:18:40 3793

原创 ubuntu 启动fiddler

切换到fiddler的安装目录下:cd fiddler执行:mono Fiddler.exe

2019-03-09 14:32:29 677

原创 selenium爬取某家生活分类平台

from selenium import webdriverimport pickleimport requestsfrom lxml import etreefrom fake_useragent import UserAgentbase_url='https://passport.58.com/login/'browser = webdriver.Firefox()brows...

2019-03-06 17:19:16 166

原创 selenium无头模式

from selenium import webdriverfrom selenium.webdriver.firefox.options import Optionsoptions = Options()options.add_argument('-headless')options.add_argument('--disable-gpu') # 禁用GPU加速options....

2019-03-04 11:37:54 3825

原创 selenium爬取某生活分类网站点击事件后弹出的信息

from selenium import webdriverimport pickleurl='https://bj.58.com/zhuanye/37291869116169x.shtml?'base_url='https://passport.58.com/login/'browser=webdriver.Firefox()browser.get(base_url)brow...

2019-03-02 19:08:57 549

原创 解决Selenium弹出新页面无法定位元素问题(Unable to locate element)

coding=utf-8 from selenium import webdriverimport timebrowser=webdriver.Firefox() browser.get("http://cn.bing.com/")keywords = 'MrLevo520 CSDN' send_keywords=keywords.decode('utf-8')#中英混输入可防止乱码...

2019-02-27 11:30:02 3860

原创 使用selenium webdriver从隐藏元素中获取文本

由于webdriver spec的定义,Selenium WebDriver 只会与可见元素交互,所以获取隐藏元素的文本总是会返回空字符串。可是,在某些情况下,我们需要获取隐藏元素的文本。这些内容可以使用element.attribute('attributeName'), 通过textContent, innerText, innerHTML等属性获取。innerHTML 会返回元素的内部...

2019-02-26 16:33:45 1627

原创 Selenium中单击Element:ElementClickInterceptedException

方法一:element = driver.find_element_by_css('div[class*="loadingWhiteBox"]')driver.execute_script("arguments[0].click();", element)方法二:element = driver.find_element_by_css('div[class*="loadingWhi...

2019-02-24 19:01:33 30194 4

原创 setting里的USER_AGENT和DownloaderMiddleware里的useragent的区别

setting里的USER_AGENT是全局的变量,分配给spider的,美运行一次就分配一次,spider里的所有的request必须共享。DownloaderMiddleware里的useragent是分配给每一个request的,可以覆盖前者。...

2019-02-23 12:40:17 271

原创 scrapy+selenium boss直聘爬虫案例分析

概述本文主要介绍scrapy架构图、组建、工作流程,以及结合selenium boss直聘爬虫案例分析架构图组件Scrapy 引擎(Engine)引擎负责控制数据流在系统中所有组件中流动,并在相应动作发生时触发事件.调度器(Scheduler)调度器从引擎接受request并将他们入队,以便之后引擎请求他们时提供给引擎.下载器(Downloader)...

2019-02-22 20:29:31 2950

原创 scrapy结合selenium进行动态加载页面内容爬取

    动态页面与静态页面比较常见的页面形式可以分为两种:静态页面 动态页面静态页面和动态页面的区别使用requests进行数据获取的时候一般使用的是respond.text来获取网页源码,然后通过正则表达式提取出需要的内容。例如:import requestsresponse = requests.get('https://www.baidu.com'...

2019-02-22 19:53:10 1805 2

原创 firfox无头模式禁止加载图片

from selenium import webdriveroptions=webdriver.FirefoxProfile()或者是webdriver.FirefoxOptions()options.set_preference(‘permissions.default.image’,2)#禁止加载图片b=webdriver.Firefox(options)b.get(‘http://i...

2019-02-21 13:53:46 872

原创 php-fpm配置详解

pid = /usr/local/var/run/php-fpm.pid #pid设置,一定要开启,上面是Mac平台的。默认在php安装目录中的var/run/php-fpm.pid。比如centos的在: /usr/local/php/var/run/php-fpm.pid   error_log = /usr/local/var/log/php-fpm.log #错误日志,上面是Mac...

2019-02-18 16:13:48 441

原创 开机启动 php-fpm

 php-fpm是独立于web服务器和php之前的一层服务器,所以,我们需要开机启动它开机启动的配置文件是:/etc/rc.local ,加入 /usr/local/php/sbin/php-fpm 即可 [root@localhost init]# vi /etc/rc.local   1 #!/bin/sh 2 # 3 # This script will be e...

2019-02-18 16:11:59 1023

原创 错误信息说找不到 php-fpm.conf

错误信息说找不到 php-fpm.conf原来是php-fpm.conf还没有,我们到 /usr/local/php/etc目录下将php-fpm.conf.default拷贝也一份成php-fpm.conf cd /usr/local/php/etc/ cp php-fpm.conf.default php-fpm.conf编辑一下这个配置文件: vim php-...

2019-02-18 16:05:03 3219 1

原创 splash : runjs()

   可以执行JavaScript代码,它与evaljs()的功能类似,但是更偏向于执行某些动作或声明某些方法例如:function main(splash, args)  splash:go("https://www.baidu.com")  splash:runjs("foo = function() { return 'bar' }")  local result = sp...

2019-02-13 20:27:21 715

原创 splash:select()方法与select_all()

select()该方法可以选中符合条件的第一个节点,如果有多个节点符合条件,则只会返回一个,其参数是CSS选择器。示例如下: 1 2 3 4 5 6 7 function main(splash) splash:go("https://www.baidu.com/") input = splash:...

2019-02-11 18:35:37 3700

原创 splash : mouse_click()方法

 此方法可以模拟鼠标点击操作,传入的参数为坐标值x和y。此外,也可以直接选中某个节点,然后调用此方法,示例如下:  1 2 3 4 5 6 7 8 9 function main(splash) #以百度为案例 splash:go("https://www.baidu.com/"...

2019-02-11 18:30:44 2415

原创 splash : add_cookie() 方法

 此方法可以为当前页面添加Cookie,用法如下:  1 cookies = splash:add_cookie{name, value, path=nil, domain=nil, expires=nil, httpOnly=nil, secure=nil}  该方法的各个参数代表Cookie的各个属性。示例如下:  1...

2019-02-11 18:19:41 1908

原创 scrapy+splash爬取京东冰激凌信息

1.启动splash:使用docker启动服务命令启动Splash服务:sudo docker run -p 5023:5023 -p 8050:8050 -p 8051:8051 scrapinghub/splash2.创建新的项目:icecreamJD,创建新的爬虫icecreamscrapy startproject icecreamJDscrapy genspider ...

2019-02-11 16:58:06 577

原创 安装splash与启动

前提:安装 docker安装splash安装命令:sudo docker pull scrapinghub/splash启动命令:sudo docker run -p 5023:5023 -p 8050:8050 -p 8051:8051 scrapinghub/splash8050 (http),8051 (https) ,5023 (telnet)输入命令cat /etc/hos...

2019-02-11 13:25:17 1485

原创 国内连接docker官网很慢修改docker中配置,添加对应中国docker加速器。

国内连接docker官网很慢修改docker中配置,添加对应中国docker加速器。    vi  /etc/docker/daemon.json    {        "registry-mirrors": ["https://registry.docker-cn.com"],        "live-restore": true    } ...

2019-02-11 13:14:39 1652

爬虫项目完整代码

爬虫项目完整代码

2018-12-22

双向LSTM进行命名实体识别NER

双向LSTM进行命名实体识别NER

2018-12-20

LSTM+CRF模型项包含完整代码

LSTM+CRF模型项包含完整代码LSTM+CRF模型项包含完整代码

2018-12-20

LSTM+CRF模型项目完整代码

LSTM+CRF模型项目完整代码

2018-12-20

LDA模型代码解析

LDA模型代码解析

2018-12-20

最大熵模型代码

最大熵模型代码

2018-12-20

人工智能+python入门到深入

python入门到深入

2018-12-20

NLP学习资料哈工大课件

NLP学习资料哈工大课件 哈工大刘挺教授关于统计自然语言处理的课件

2018-12-20

NLP学习资料分词深入研究

NLP学习资料分词深入研究

2018-12-20

lstm情感分析代码

lstm情感分析代码

2018-12-20

world2vec文档

world2vec文档

2018-12-20

re规则表正则表达式

re规则表正则表达式

2018-12-20

BILSTM + CRF FOR NER

BILSTM + CRF FOR NER

2018-09-03

信贷树决策树的金融行业应用

决策树应用结合金融行业的具体应用。决策树应用结合金融行业的具体应用。

2018-07-28

空空如也

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

TA关注的人

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