爬虫
J符离
这个作者很懒,什么都没留下…
展开
-
selenium根据文本内容定位元素
关于selenium的定位方法很多人说了,但是根据文本内容进行定位的找了很久都没有找到相关的文章,因此把自己走过的弯路记录分享一下。如下图,如果我们要定位“下一页”这个元素,无法通过id、class等等这些来弄,咋一看好像可以用find_element_by_xpath。复制一下xpath来看一下:“//[@id=“pe100_page_存量房房源_oracle_single_pager”]/...原创 2020-03-09 17:37:08 · 10958 阅读 · 1 评论 -
WebDriverException: Message: unknown error: Element is not clickable at point报错原因
WebDriverException: Message: unknown error: Element is not clickable at point翻译一下:未知错误:元素在点处不可单击一般有两种可能,一种是你第一次使用某台电脑执行click()事件,那有可能是浏览器驱动问题,更新一下驱动即可;另一种可能是你之前在该台电脑能正常使用点击事件,只是在某段代码报错,那么应该是页面上有其他弹...原创 2020-03-09 11:34:14 · 1185 阅读 · 0 评论 -
selenium与tesserocr截图并识别验证码
一、背景如上图,某网站进行查询需要输入验证码,验证码图片是一个链接,研究了一下输入验证码和查询条件后的url结构(http://zfcj.gz.gov.cn/data/QueryService/Query.aspx?QueryID=26&IsSearch=true&PYBH=&XQMC=&FBZL=&FWYZRZJ=&HXS=&HXT=&...原创 2020-03-05 11:58:56 · 733 阅读 · 0 评论 -
python爬虫刨北上广深的房价来看看--修改版
年前偷懒,写的文章《python爬虫刨北上广深的房价来看看》里,爬虫脚本写得水得一批,今天翻看了一下有点受不了,花了点时间重新码了一下,主要是把其中区划获取和页数获取问题解决了,现在就不会每个区域最多取3000套房源的问题了。一、脚本先上脚本再说import requestsfrom bs4 import BeautifulSoupimport pandas as pdimport t...原创 2020-02-13 17:19:49 · 363 阅读 · 0 评论 -
python爬虫刨北上广深的房价来看看
2019年过去了,突然想看看外界一直在说的房价跌跌跌,到底跌成了啥样子,于是,花了点时间,把链家上北上广深杭这几个热门城市的二手房单价弄下来看看。直接上代码了(临近过年,懒了许多,代码写得很简单,各位看官可以跳到最后直接看房价情况即可)import requestsfrom bs4 import BeautifulSoupimport pandas as pdimport ...原创 2020-01-15 18:19:47 · 687 阅读 · 1 评论 -
requests下载并使用cookies
以人人网为例,要爬取人人网上某个网页信息,首先需要登录才能访问,通常最简单地做法是手动到网站上登录,然后找到cookies信息,再放到requests中去爬取html信息。如果想用CookieJar实现,可以看另一篇《CookieJar下载并使用cookies》现在换一种套路,能不能直接在爬虫中输入帐号密码,然后自动获取cookies信息再去爬取html,不要再让我自己手动去复制了?req...原创 2019-08-26 18:42:52 · 507 阅读 · 0 评论 -
CookieJar下载并使用cookies
在前面写过一篇《requests下载并使用cookies》,除了用requests,用http.cookiejar同样能实现,不过步骤繁琐很多,用http.cookiejar首先需要创建一个cookiejar对象,然后再用cookiejar创建一个handler,再在handler中创建一个opener,最后在opener中传递帐号密码,获取cookies信息。下面主要介绍两种使用方法,一种是...原创 2019-08-27 10:24:08 · 2711 阅读 · 0 评论 -
python爬虫爬取贝壳网上动态加载的数据
一、背景思路爬取贝壳上二手房信息时,想要将对应房源近一个月的带看信息弄下来,看看哪些房源热度最高。结果毫无意外,简单粗暴的BeautifulSoup+select无法将这部分信息弄下来,如下图,如果带看记录过多,页面是通过按钮控制切换的,静态页面上最多只有当前3个带看信息。一般像这种在局部页面点击能进行数据更新,而网页的url不会变化的,大概率都是通过异步加载(AJAX)进行数据更新。...原创 2019-08-28 17:34:35 · 3103 阅读 · 0 评论 -
Python爬虫之string、strings、stripped_strings、get_text和text用法区别
Python爬虫获取html中的文本方法多种多样,这里主要介绍一下string、strings、stripped_strings和get_text用法string:用来获取目标路径下第一个非标签字符串,得到的是个字符串strings:用来获取目标路径下所有的子孙非标签字符串,返回的是个生成器stripped_strings:用来获取目标路径下所有的子孙非标签字符串,会自动去掉空白字符串...原创 2019-09-07 15:00:07 · 9830 阅读 · 4 评论 -
requests爬取不信任的SSL证书网站
一、什么是SSL证书SSL 证书就是遵守 SSL协议,由受信任的数字证书颁发机构CA,在验证服务器身份后颁发,具有服务器身份验证和数据传输加密功能。SSL证书通过在客户端浏览器和web服务器之间建立一条SSL安全通道(Secure socket layer(SSL)安全协议是由Netscape Communication公司设计开发。该安全协议主要用来提供对用户和服务器的认证;对传送的数据...原创 2019-08-26 18:13:43 · 1077 阅读 · 2 评论 -
requests使用代理IP
一、为什么使用代理IP我们去爬取一些网站信息时,会把我们机器的IP也传递给目标网站,如果目标网站设置了反扒机制,比如检测单个IP的访问频率,如果频率超过某个阀值,则直接拒绝访问。举个例子,安居客网设定,单个IP一秒的访问频率不能超过30次,如果超过30次,拒绝该IP的访问需求,如果是手动点击访问,一秒钟30次确实足够了,但是如果是爬虫,呵呵呵,很简单就超过这个频率了。针对上面说的问题,为了...原创 2019-08-26 17:53:53 · 4831 阅读 · 0 评论 -
python 爬虫之find、find_all用法
BeautifulSoup 文档里,find、find_all两者的定义如下:find_all(tag, attributes, recursive, text, limit, keywords)find_all(标签、属性、递归、文本、限制、关键词)find(tag, attributes, recursive, text, keywords)find与find_all的区别,f...原创 2019-07-09 16:55:54 · 57114 阅读 · 4 评论 -
python 爬虫之xpath用法
一、什么是XPathXPath全称为XML Path Language一种小型的查询语言,在爬虫中,我们其实就是拿它来搜索HTML文档,仅此而已。而网页内容只有通过解析才能进行搜索,所以使用XPath时,需要引入lxml库,这个库就是来解析网页,协助XPath进行搜索的。lxml库的安装,可以直接使用`pip3 install lxml`进行安装。如果没有错误信息说明安装成功了;如果出现...原创 2019-07-19 01:06:31 · 953 阅读 · 0 评论 -
XPath解析中的 'Element a at 0x5308a80'是什么
话不多说,直接上代码以链家网为例,解析网页打印出来的东西居然不是想象中的html文件,而是“<Element html at 0x52e5c10>”这么个东西。这个东西其实是一个元素,后面会介绍到。现在还是说说怎么把这个东西变成我们能看懂的html内容吧。from lxml import etreeimport requestsfrom lxml.html import ...原创 2019-07-11 16:38:49 · 28683 阅读 · 5 评论 -
python爬虫--根据身份证号码获取户籍地、出生年月等信息
一、背景工作中偶尔会遇到这样的情况,给你一堆客户身份证号码,然后要你把对应的性别、生日、户籍地等信息弄出来。最常用的方法就是用excel表套公式,这个方式如果用来取性别、生日这些信息的话问题不大,毕竟这些规则还好梳理,但是如果想要弄户籍地(如:广东省 广州市 荔湾区),操作难度极大。首先,你要弄到相应的行政区划代码,如广东省广州市天河区是440106,要注意,这些区划代码因为行政区划的调整...原创 2019-07-19 10:48:08 · 10177 阅读 · 3 评论 -
python爬取网页数据并自动写入SQLserver数据库
如上图,某网站每天会公布城市的新建商品房可售、未售、签约情况,现在需要把这些数据获取下来,并写入数据库中。整个过程分为2大部分,第一部分是网页的解析,将目标信息获取,第二部分是数据库的连接,将数据存入数据库。一、数据爬取数据爬取还是老套路了,这个网页极其友好,没有什么动态加载或反爬机制等,所以直接用网页下载器requests+网页解析器BeautifulSoup+select语法即可...原创 2019-07-22 11:23:15 · 9039 阅读 · 0 评论 -
python爬虫原理简析
一、什么是爬虫?学习爬虫前,我们首先要先了解一下爬虫的目的是什么?爬虫简单来说就是一个程序,这个程序会根据我们的设定,将网页上的目标内容获取并存储下来,供后续使用。爬虫的工作过程跟我们自己上网搜索的过程类似,爬虫是一个“拟人”的操作人力工作过程:浏览器发送请求(在搜索框输入内容并搜索)-- 服务器返回搜索结果-- 肉眼筛选目标内容,通过复制或手动输入记录下来爬虫工作过程:模拟浏览...原创 2019-07-31 12:18:01 · 311 阅读 · 0 评论 -
python 三种下载图片的方式
python爬虫获取网页信息,除了文本信息,最常见的内容就是照片了,获取照片的方式有多种,这里把自己常用的三种模式分享一下。举例子说明吧。如下图,现在要爬取链家网上各个在售房屋的户型图,首先先找出户型图对应的http,这个http只有一个内容,就是照片。下载照片的方式是以二进制文本的格式。。。真没什么好讲的,上代码吧一、requests下载import requests...原创 2019-08-05 16:21:27 · 2912 阅读 · 1 评论 -
python 爬取自如网租房信息(解决照片价格问题)
一、背景爬取自如网的租房信息时,本来以为是手到擒来的事,结果却被租房价格卡死了。有脾气的自如,价格居然搞成了照片,并且照片是乱序的0到9,每次根据像素位截取。最气人的,还是一张照片只取一个数字,例如价格是“1490”,它就要由四张照片和四个像素位组合来取,如下图。二、解决价格问题解决价格问题,最传统的是思路,应该就是先把数字照片识别出来,然后根据像素位取出数字,再把数...原创 2019-08-07 15:30:29 · 1139 阅读 · 0 评论 -
python 爬虫之select用法
在python爬取数据时,通过requests和BeautifulSoup把网页内容解析下来是第一步,这一步通常很简单,数据爬取的重头戏主要集中在所需内容的精准定位上,定位元素的方式有多种,今天主要讲一下select的用法。需要注意一点,select用法会将所有满足条件的值取出,组成一个listselect定位元素有5种方式:一、通过标签名查找用法:soup.select(标签名)...原创 2019-07-09 11:13:59 · 13907 阅读 · 3 评论