Home

抓取某东的TT购买记录之后,我发现...

最近学习了一些爬虫技术,想做个小项目检验下自己的学习成果,在逛某东的时候,突然给我推荐一个TT的产品,点击进去浏览一番之后就产生了抓取TT产品,然后进行数据分析,看下那个品牌的TT卖得最好。 本文通过selenium抓取TT信息,存入到mongodb数据库中。 抓取TT产品信息 TT产品页面的连接是https://list.jd.com/list.html?cat=9192,9196,1502&page=1&sort=sort_totalsales15_desc&trans=1&JL=6_0_0#J_main。 上面有个page参数,表示第几页。改变这个参数就可以爬取到不同页面的TT产品。 通过开发者工具看下如果抓取TT的产品信息,例如名字、品牌...

Read more

pycharm创建scrapy项目教程及遇到的坑

最近学习scrapy爬虫框架,在使用pycharm安装scrapy类库及创建scrapy项目时花费了好长的时间,遇到各种坑,根据网上的各种教程,花费了一晚上的时间,终于成功,其中也踩了一些坑,现在整理下相关教程,希望帮助那些遇到和我一样问题的码农。 1、环境 操作系统:windows10。 python版本:python3.7,必须使用Anaconda,目前是Anaconda5.3.1。下载地址:https://www.anaconda.com/download/。 下载64位的安装包。scrapy依赖的类库比较多,使用Anaconda会将相关的依赖的类库都安装好,并且版本保持一致。 pycharm:pycharm2018。 2、安装Anaconda 安装好Anac...

Read more

一起学爬虫——一步一步打造爬虫代理池

最近在使用爬虫爬取数据时,经常会返回403代码,大致意思是该IP访问过于频繁,被限制访问。限制IP访问网站最常用的反爬手段了,其实破解也很容易,就是在爬取网站是使用代理即可,这个IP被限制了,就使用其他的IP。对于高大上的公司来说,他们基本都使用收费的代理,基本不会有什么问题,比较稳定。像我这样的矮矬穷,肯定是用不起收费的代理。一般都是使用国内免费的代理,网上也有很多提供免费的代理。 很多人都是从网上爬取一批免费的代理IP,存放在存储媒介中,例如excel文件或者数据库。定时维护代理,保证代理可用。这个做法有个缺点,有些机器上并没有装有excel或者mysql、redis等数据库,这就导致了的代理池无法正常使用。 我之前是做java开发的,经常会把一些常用的数据放在ArrayLis...

Read more

一起学爬虫——使用selenium和pyquery爬取京东商品列表

今天一起学起使用selenium和pyquery爬取京东的商品列表。本文的所有代码是在pycharm IDE中完成的,操作系统window 10。 1、准备工作 安装pyquery和selenium类库。依次点击file->settings,会弹出如下的界面: 然后依次点击:project->project Interpreter->”+”,,如上图的红色框所示。然后会弹出下面的界面: 输入selenium,在结果列表中选中“selenium”,点击“install package”按钮安装selenium类库。pyquery也是一样的安装方法。 安装chrome和chrome driver插件。chrome dirver插件下载地址:http://npm...

Read more

一起学爬虫——如何爬取通过ajax加载数据的网站

目前很多网站都使用ajax技术动态加载数据,和常规的网站不一样,数据时动态加载的,如果我们使用常规的方法爬取网页,得到的只是一堆html代码,没有任何的数据。 请看下面的代码: url = 'https://www.toutiao.com/search/?keyword=美女' headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36 SE 2.X MetaSr 1.0"} response = requests.get(url,headers=headers) pri...

Read more

一起学爬虫——PyQuery常用用法总结

什么是PyQuery PyQuery是一个类似于jQuery的解析网页工具,使用lxml操作xml和html文档,它的语法和jQuery很像。和XPATH,Beautiful Soup比起来,PyQuery更加灵活,提供增加节点的class信息,移除某个节点,提取文本信息等功能。 初始化PyQuery对象 html文档的所有操作都需要PyQuery对象来完成,初始化PyQuery对象主要有三种方式,分别是通过网址、字符串和文件名创建。 方式一:通过网址初始化PyQyery对象 先看一段代码: from pyquery import PyQuery as pq s = '<html><title>PyQuery用法总结<title></...

Read more

一起学爬虫——使用Beautiful Soup爬取网页

要想学好爬虫,必须把基础打扎实,之前发布了两篇文章,分别是使用XPATH和requests爬取网页,今天的文章是学习Beautiful Soup并通过一个例子来实现如何使用Beautiful Soup爬取网页。 什么是Beautiful Soup Beautiful Soup是一款高效的Python网页解析分析工具,可以用于解析HTL和XML文件并从中提取数据。 Beautiful Soup输入文件的默认编码是Unicode,输出文件的编码是UTF-8。 Beautiful Soup具有将输入文件自动补全的功能,如果输入的HTML文件的title标签没有闭合,则在输出的文件中会自动补全</title>,并且还可以将格式混乱的输入文件按照标准的缩进格式输出。 ...

Read more

一起学爬虫——使用xpath库爬取猫眼电影国内票房榜

之前分享了一篇使用requests库爬取豆瓣电影250的文章,今天继续分享使用xpath爬取猫眼电影热播口碑榜 XPATH语法 XPATH(XML Path Language)是一门用于从XML文件中查找信息的语言。通用适用于从HTML文件中查找数据。工欲善其事必先利其器,我们首先来了解XPATH常用的语法规则。 常用匹配规则: 属性 匹配规则描述 nodename 匹配此节点的所有子节点 / 匹配当前节点的直接子节点,不包含孙节点 // 匹配当前节点的所有子孙节点 ...

Read more

一起学爬虫——通过爬取豆瓣电影top250学习requests库的使用

学习一门技术最快的方式是做项目,在做项目的过程中对相关的技术查漏补缺。 本文通过爬取豆瓣top250电影学习python requests的使用。 1、准备工作 在pycharm中安装request库 请看上图,在pycharm中依次点击:File->Settings。然后会弹出下图的界面: 点击2中左上角的“+”按钮,弹出下图的界面: 在右上角的查询框输入requests,然后点击“Install Package”按钮安装requests插件。 2、目标 抓取每部电影的名字、主演、评分、图片等信息, 并保存在txt文本文件中。 3、分析豆瓣top250电影首页 1、分析豆瓣电影top250的网页https://movie.douban.com/top2...

Read more

一起学爬虫——urllib库常用方法用法总结

1、读取cookies import http.cookiejar as cj,urllib.request as request cookie = cj.CookieJar() handler = request.HTTPCookieProcessor(cookie) opener = request.build_opener(handler) response = opener.open('http://www.bigdata17.com') for item in cookie: print(item.name + "=" + item.value) 2、将cookies保存在文件中 filename = 'baidu_cookies.txt' cookies ...

Read more