这篇博文主要是对我的这篇https://www.cnblogs.com/tszr/p/12198054.html爬虫效率的优化,目的是为了提高爬虫效率. 可以根据出发地同时调用多个CPU,每个CPU运行一个出发地的脚本,如果你的电脑有8个CPU,那么将会每次同时获取8个出发地的数据. 代码如下: import time import json import pymongo import requests import urllib.request #使用MongoDB创建数据库.表 client…
目标 先介绍下我们本篇文章的目标,如图: 本篇文章计划获取商品的一些基本信息,如名称.商店.价格.是否自营.图片路径等等. 准备 首先要确认自己本地已经安装好了 Selenium 包括 Chrome ,并已经配置好了 ChromeDriver .如果还没安装好,可以参考前面的前置准备. 分析 接下来我们就要分析一下了. 首先,我们的搜索关键字是 iPhone ,直接先翻到最后一页看下结果,发现有好多商品并不是 iPhone ,而是 iPhone 的手机壳,这个明显不是我们想要的结果,小编这里选择…
用python爬取动态网页时,普通的requests,urllib2无法实现.例如有些网站点击下一页时,会加载新的内容,但是网页的URL却没有改变(没有传入页码相关的参数),requests.urllib2无法抓取这些动态加载的内容,此时就需要使用Selenium了. 使用Selenium需要选择一个调用的浏览器并下载好对应的驱动,我使用的是Chrome浏览器. 将下载好的chromedrive.exe文件复制到系统路径:E:\python\Scripts下,如果安装python的时候打path…
1.下载MongoDB 官网下载:https://www.mongodb.com/download-center#community 上面这张图选择第二个按钮 上面这张图直接Next 把bin路径添加到path中,如下图: 在安装路径下自己创建一个文件mongo.conf,配置内容如下: #数据库路径dbpath=E:\mongodb\data#日志输出文件路径logpath=E:\mongodb\log\mongo.log#错误日志采用追加模式logappend=true#启用日志文件,默认启…
Scrapy框架它能够帮助提升爬虫的效率,从而更好地实现爬虫.Scrapy是一个为了抓取网页数据.提取结构性数据而编写的应用框架,该框架是封装的,包含request异步调度和处理.下载器(多线程的Downloader).解析器selector和twisted(异步处理)等.对于网站的内容爬取,其速度非常快捷. 下面将使用Scrapy框架抓取某证券网站A股行情,爬取过程分为以下五步: 一:创建Scrapy爬虫项目: 二:定义一个item容器: 三:定义settings文件进行基本爬虫设置: 四:编…
import requests from bs4 import BeautifulSoup url = "http://www.cntour.cn/" strhtml = requests.get(url) soup = BeautifulSoup(strhtml.text,"lxml") #下面的参数由网站开发者模式中Copy->copy selector复制而来 data = soup.select("#main > div > di…
天气预报网址:https://id.heweather.com/,这个网站是需要注册获取一个个人认证后台密钥key的,并且每个人都有访问次数的限制,这个key就是访问API的钥匙. 这个key现在是要自己创建的,名称自己写,key值可以不写,创建的时候会自动生成. 接下来就是要阅读这个API文档. 包括上面怎么创建获取这个key这个API文档也有介绍的. 选择API这部分来阅读. 接口地址: #获取城市列表 import requests url = 'https://cdn.heweather…
import requests url = 'http://www.cntour.cn/' strhtml = requests.get(url) print(strhtml.text) URL='http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule' #post请求需要写请求访问,请求内容可以在对应网页的开发者模式中获取,谷歌浏览器显示不出来,我使用的是IE浏览器 Form_data = { 'action':…
我们在开发者模式下不仅可以找到URL.Form Data,还可以在Request headers 中构造浏览器的请求头,封装自己.服务器识别浏览器访问的方法就是判断keywor是否为Request headers下的User-Agent,因此我们只需要构造这个请求头的参数.创建请求头部信息即可. headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like…
在约会网站使用K-近邻算法 准备数据:从文本文件中解析数据 海伦收集约会数据巳经有了一段时间,她把这些数据存放在文本文件(1如1^及抓 比加 中,每 个样本数据占据一行,总共有1000行.海伦的样本主要包含以下3种特征: 每年获得的飞行常客里程数 玩视频游戏所耗时间百分比 每周消费的冰淇淋公升数 将文本记录到转换NumPy的解析程序 import operator from numpy import * from os import listdir def file2matrix(filenam…