06 2017 档案
摘要:文章来源:http://blog.csdn.net/google19890102/article/details/51355282 对于时间数据,如2016-05-05 20:28:54,有时需要与时间戳进行相互的运算,此时就需要对两种形式进行转换,在Python中,转换时需要用到time模块,具体
阅读全文
摘要:# -*- coding: utf-8 -*- import scrapy from daomu.items import DaomuItem class DaomuspiderSpider(scrapy.Spider): name = "daomuspider" # allowed_domains = ["www.daomubiji.com"] start_urls ...
阅读全文
摘要:# python操作mongodb # 首先,引入第三方模块pymongo,该模块是python用来操作mongodb的 import pymongo # 第二步,设置ip地址,以及表格名称,表格名字即在mongodb里面的表名称 MONGO_URI = 'localhost' MONG_DB = '表格名称' # 第三步,建立连接 client = pymongo.MongoClient(M...
阅读全文
摘要:# -*- coding: utf-8 -*- # scrapy爬取豆瓣电影top250 import scrapy from douban.items import DoubanItem class DoubanspiderSpider(scrapy.Spider): name = "doubanspider" # allowed_domains = ["movie.do...
阅读全文
摘要:1 # requests+xpath+map爬取百度贴吧 2 # 目标内容:跟帖用户名,跟帖内容,跟帖时间 3 # 分解: 4 # requests获取网页 5 # xpath提取内容 6 # map实现多线程爬虫 7 import requests 8 from requests.exceptions import RequestException 9 from lxml i...
阅读全文
摘要:1 # 多线程爬虫 2 # map函数的使用 3 # from multiprocessing.dummy import Pool 4 # pool=Pool(4) 5 # results = pool.map(爬取函数,网址列表) 6 # 实例演示: 7 from multiprocessing.dummy import Pool as ThreadPool 8 import ...
阅读全文
摘要:# xpath的使用 安装lxml from lxml import etree Selector = etree.HTML(网页代码) Selector.xpath(一段神奇的代码) xpath的一般用法 //定位根节点 /表示往下层寻找 /text()提取文本内容 /@***提取属性 例: response.xpath('//ul[@id="useful"]/li/text()') 中括...
阅读全文
摘要:1 # -*- coding: utf-8 -*- 2 # scrapy爬取极客学院全部课程 3 import scrapy 4 from pyquery import PyQuery as pq 5 from jike.items import JikeItem 6 7 class JikespiderSpider(scrapy.Spider): 8 name = "...
阅读全文
摘要:1 # 使用multiprocessing模块创建多进程 2 # multiprcessing模块提供了一个Process类来描述一个进程对象. 3 # 创建子进程时,只需要传入一个执行函数和函数的参数,即可完成一个process实例的创建 4 # 用start()方法启动进程 5 # 用join()方法实现进程间的同步. 6 import os 7 from multiproce...
阅读全文
摘要:一种组合方式: (.*?)匹配除换行符以外任意字符,匹配模式加上re.S,则开启无敌模式,匹配一切.需要的内容放在括号里面. 两个方法: re.search+group()可以找到第几个括号的东西,在确定只有一个内容时,使用re.search会提高效率, 因为re.search找到第一个就不会去找了
阅读全文
摘要:https://github.com/rolando/scrapy-redis
阅读全文
摘要:1 # -*- coding: utf-8 -*- 2 import scrapy 3 from pyquery import PyQuery as pq 4 5 from zolphone.items import ZolphoneItem 6 7 8 class PhoneSpider(scrapy.Spider): 9 name = "phone" 10 ...
阅读全文
摘要:我是这样理解的, css选择如同你尽可能具体的描述一个元素的形态, 包括他的: 标签, 类, id 以及这些的组合, 目标是尽可能确定元素的唯一坐标 , 以方便选择. 而xpath是根据元素的路径去确定坐标的. 举个例子, 形容上海, 用css可能会是 它是一座直辖市(类),在长江下游(标签),是中
阅读全文
摘要:MongoDB 使用 update() 和 save() 方法来更新集合中的文档。接下来让我们详细来看下两个函数的应用及其区别。 update() 方法 update() 方法用于更新已存在的文档。语法格式如下: 参数说明: query : update的查询条件,类似sql update查询内wh
阅读全文
摘要:pymongo 是 mongodb 的 python Driver Editor.记录下学习过程中感觉以后会常用多一些部分,以做参考。 1. 连接数据库 要使用pymongo最先应该做的事就是先连上运行中的 mongod 。 创建一个 .py 文件,首先导入 pymongo: from pymong
阅读全文
摘要:dict = {'Name': 'Zara', 'Age': 7} dict2 = {'Sex': 'female' } dict.update(dict2)输出结果:{'Age': 7, 'Name': 'Zara', 'Sex': 'female'}
阅读全文
摘要:HTTP状态码分类 分类分类描述 1** 信息,服务器收到请求,需要请求者继续执行操作 2** 成功,操作被成功接收并处理 3** 重定向,需要进一步的操作以完成请求 4** 客户端错误,请求包含语法错误或无法完成请求 5** 服务器错误,服务器在处理请求的过程中发生了错误 HTTP状态码列表 状态码状态码英文名称中文描述 100 Continue 继续。客户...
阅读全文
摘要:类和对象对象即是模拟真实世界,把数据和代码封装在一起.对象 = 属性 + 方法属性即变量,方法即函数我们把静态的特征成为属性,把动态的特征成为方法. 面向对象编程面向对象编程封装:信息隐蔽技术继承:子类共享父类的属性和方法多态:不同实例对象对同一名称的方法可能响应不同的特征
阅读全文
摘要:super函数的作用super().__init__()当子类重写父类的方法时,会覆盖父类方法,super此举是保留父类 如果属性名跟方法名相同,属性会覆盖方法 方法必须要有实例才能被调用,这叫做绑定
阅读全文
摘要:" abc ".strip() # returns "abc" " xyz ".lstrip() # returns "xyz " " xyz ".rstrip() # returns " xyz" " x y z ".replace(' ', '') # returns "xyz"...
阅读全文
摘要:downloader middleware作用:改写请求,如加入代理,加入头部等;处理异常等。
阅读全文
摘要:logging模块是Python提供的自己的程序日志记录模块。 在大型软件使用过程中,出现的错误有时候很难进行重现,因此需要通过分析日志来确认错误位置,这也是写程序时要使用日志的最重要的原因。 scrapy使用python内置的logging模块记录日志 日志的级别 1. logging.CRITI
阅读全文
摘要:作者:知乎用户链接:https://www.zhihu.com/question/54773510/answer/146971644 meta属性是字典,字典格式即{‘key’:'value'},字典是一种可变容器模型,可存储任意类型对象。 request中meta参数的作用是传递信息给下一个函数,
阅读全文
摘要:当Item在Spider中被收集之后,它将会被传递到Item Pipeline,一些组件会按照一定的顺序执行对Item的处理。 每个item pipeline组件(有时称之为“Item Pipeline”)是实现了简单方法的Python类。他们接收到Item并通过它执行一些行为,同时也决定此Item
阅读全文
摘要:Spiders Spider类定义了如何爬取某个(或某些)网站。包括了爬取的动作(例如:是否跟进链接)以及如何从网页的内容中提取结构化数据(爬取item)。 换句话说,Spider就是您定义爬取的动作及分析某个网页(或者是有些网页)的地方。 对spider来说,爬取的循环类似下文: 以初始的URL初
阅读全文
摘要:# 命令行输入:scrapy shell +链接,会自动请求url,得到的相应默认为response,开启命令行交互模式 scrapy shell http://doc.scrapy.org/en/latest/_static/selectors-sample1.html In [1]: response#response为默认相应 Out[1]: In [2]: response.tex...
阅读全文
摘要:当抓取网页时,常见的任务是从HTML源码中提取数据。现有的一些库可以达到这个目的: BeautifulSoup lxml BeautifulSoup lxml Scrapy 提取数据有自己的一套机制。它们被称作选择器(seletors),因为他们通过特定的 XPath 或者 CSS 表达式来“选择”
阅读全文
摘要:下面列出了可用在 XPath 表达式中的运算符: 如果 price 是 9.80,则返回 true。 如果 price 是 9.90,则返回 false。 如果 price 是 9.90,则返回 true。 如果 price 是 9.80,则返回 false。 如果 price 是 9.00,则返回
阅读全文
摘要:XML 实例文档 我们将在下面的例子中使用此 XML 文档: <?xml version="1.0" encoding="ISO-8859-1"?> <bookstore> <book> <title lang="eng">Harry Potter</title> <price>29.99</pri
阅读全文
摘要:XML 实例文档 我们将在下面的例子中使用这个 XML 文档。 选取节点 XPath 使用路径表达式在 XML 文档中选取节点。节点是通过沿着路径或者 step 来选取的。 下面列出了最有用的路径表达式: 表达式描述 nodename 选取此节点的所有子节点。 / 从根节点选取。 // 从匹配选择的
阅读全文
摘要:scrapy --help 列出帮助信息以及常用命令scrapy version 列出scrapy版本scrapy version -v 列出详细的scrapy版本以及各组件信息 scrapy startproject projectname 创建项目 cd projectname 切换到项目目录下
阅读全文
摘要:1. 查看已安装的库 pip list conda list 其中,pip list 只能查看库,而 conda list 则可以查看库以及库的版本 2. 安装或更新库
阅读全文
摘要:# 爬虫主程序quotes.py # -*- coding: utf-8 -*- import scrapy from quotetutorial.items import QuoteItem # 启动爬虫 # 请求都是默认的,我们不需要管请求的操作,只要关心解析的过程就可以了 class QuotesSpider(scrapy.Spider): name = "quotes" ...
阅读全文
摘要:1 #!/usr/bin/env python 2 # -*- encoding: utf-8 -*- 3 # Created on 2017-06-11 10:10:53 4 # Project: london 5 6 from pyspider.libs.base_handler import * 7 import pymongo 8 9 10 class Handl...
阅读全文
摘要:标签: python爬虫pyspider 2015-09-05 10:57 9752人阅读 评论(0) 收藏 举报 2015-09-05 10:57 9752人阅读 评论(0) 收藏 举报 分类: Python(8) 分类: Python(8) 版权声明:本文为博主原创文章,未经博主允许不得转载。
阅读全文
摘要:# 使用微信处理反爬抓取微信文章 # 一、引入模块 from pyquery import PyQuery as pq import requests from urllib.parse import urlencode import pymongo from config import * # 参数设置 headers = { 'Cookie':'IPLOC=CN3100; SUID...
阅读全文