随笔分类 -  爬虫相关问题

摘要:今天就聊聊爬虫的清洗,下载网页只是最简单的一个步骤,最让人头疼的是数据的清洗。 为什么要这样说呢,因为爬虫首先是获得数据,清洗是把非结构化的数据转换成结果化的数据,这个时候是最考验人的时候。 如果是国内的网站,清洗工作相对比较简单,因为国内的数据不是那么的凌乱,有一定的规则,我们清洗的时候需要写的规 阅读全文
posted @ 2017-12-28 14:42 淋哥 阅读(1951) 评论(0) 推荐(0) 编辑
摘要:tornado中的coroutine是python中真正意义上的协程,与python3中的asyncio几乎是完全一样的,而且两者之间的future是可以相互转换的,tornado中有与asyncio相兼容的接口。 下面是利用tornado中的coroutine进行并发抓取的代码: 利用corout 阅读全文
posted @ 2017-12-28 14:42 淋哥 阅读(1047) 评论(0) 推荐(0) 编辑
摘要:有时候我们需要清洗数据,里面有超链接,怎么去掉他们,比如下面的问题 第一种方法: 用这则替换,把 href 替换为 hre1f 就可以了, 第二种方法: 记录下来,供以后学习参考 阅读全文
posted @ 2017-12-28 14:29 淋哥 阅读(4008) 评论(0) 推荐(0) 编辑
摘要:在我们使用Python + selenium 爬虫的时候,会遇到如下报错,原因是 当页面上的元素超过一屏后,想操作屏幕下方的元素,是不能直接定位到,会报元素不可见的。 这时候需要借助滚动条来拖动屏幕,使被操作的元素显示在当前的屏幕上。滚动条是无法直接用定位工具来定位的。selenium里面也没有直接 阅读全文
posted @ 2017-12-28 14:29 淋哥 阅读(1534) 评论(0) 推荐(0) 编辑
摘要:1. 测试页面是 https://www.hao123.com/,这个是百度的导航 2. 为了避免网络请求带来的差异,我们把网页下载下来,命名为html,不粘贴其代码。 3.测试办法: 我们在页面中找到 百度新闻 关键字的链接,为了能更好的对比,使程序运行10000次,比较时间差异: 1.正则编码及 阅读全文
posted @ 2017-12-21 11:08 淋哥 阅读(2916) 评论(0) 推荐(0) 编辑
摘要:1. 问题描述 在做爬虫的时候,数据量很大,大约有五百百万条数据,假设有个字段是conmany_name(拍卖公司名称),我们现在需要从五百万条数据里面查找出来五十家拍卖公司, 并且要求字段 time(时间) 大于7月一号,小于10月31号。 2. 问题解决 我们首先想到的解决办法是添加索引,对拍卖公司字段添加索引,但是因为日期是大于7月1号,小于10月31号,在... 阅读全文
posted @ 2017-12-19 15:54 淋哥 阅读(1202) 评论(0) 推荐(0) 编辑
摘要:遇到的问题是:爬取网页得到的结果如下(部分) 里面的中文出现乱码。 这是 结果: 阅读全文
posted @ 2017-11-10 15:32 淋哥 阅读(2081) 评论(0) 推荐(0) 编辑
摘要:需要爬取国内某个网站,但是这个网站封ip,没办法,只能用代理了,然后构建自己的代理池,代理池维护了20条进程, 所用的网络是20M带宽,实际的网速能达到2.5M,考虑到其他原因,网速未必能达到那么多。爬虫对网速的要求挺高的。 首先把 URL 图片的链接 抓取下来 保存到数据库中去,然后使用多进程进行 阅读全文
posted @ 2017-09-30 17:03 淋哥 阅读(1254) 评论(0) 推荐(1) 编辑
摘要:今天要聊的是封ip对爬虫的影响。我认为封ip能拒绝一部分网络请求,减轻服务器的压力,但是如果要是建立一个好的ip池,封对爬虫的影响不大。 爬取国内一个拍卖公司的网站,刚开始用多进程下载,每分钟能爬取 1000个页面,后来不知怎么地,他封ip了,于是就去购买爬虫ip,建立自己的代理池, 仅仅维护了二十 阅读全文
posted @ 2017-09-30 15:58 淋哥 阅读(741) 评论(0) 推荐(0) 编辑
摘要:今天要做数据清洗的时候,要更新一个数据库字段,考虑到用多进程去更新数据库,也许程序会跑得快一些,结果开了64个进程, 结果是其他程序更新的时候,速度非常慢,最后发现的原因是,数据库中有64个SQL语句执行更新,这样就导致了对数据库进行增删改查的速度很慢。 这是一个血的教训,所有以后的操作尽量少用多进 阅读全文
posted @ 2017-09-30 14:46 淋哥 阅读(1829) 评论(0) 推荐(0) 编辑
摘要:一下子运行 七八十个 select 将会是什么样的体验呢? 业务部门提供了一个需要,要求从爬虫数据中提取出88家的数据, 并且也提供了一个excel表格,如下图: 这个时候我们可以通过拍卖行,拍卖时间,拍卖会专场写SQL语句,单个SQL是这样写的。其中数据库表格的数据是540万,我们在建表的时候已经 阅读全文
posted @ 2017-09-30 14:27 淋哥 阅读(659) 评论(0) 推荐(0) 编辑
摘要:今天在采集网页的时候 发现请求连接之后,没有返回结果 代码如下: url = 'https://skinnerinc-res.cloudinary.com/images//v1501706307/1165786/pair-of-karl-springer-style-table-' response 阅读全文
posted @ 2017-09-28 16:56 淋哥 阅读(355) 评论(0) 推荐(0) 编辑
摘要:直接上代码: 该程序自动测试电脑的IP地址,然后根据IP地址生成 HOST 阅读全文
posted @ 2017-07-29 17:47 淋哥 阅读(535) 评论(0) 推荐(0) 编辑
摘要:对于这个错误,查看代码如下 因为请求的是https 协议,所以请求禁用证书验证 正常的代码是: 阅读全文
posted @ 2017-07-25 19:11 淋哥 阅读(14593) 评论(0) 推荐(1) 编辑
摘要:实现百度搜索并保存到本地User_Agent = 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.81 Safari/537.36' import urllib2 import urllib url = "https://www.baidu.com/s?wd=... 阅读全文
posted @ 2017-06-09 13:55 淋哥 阅读(4203) 评论(0) 推荐(1) 编辑
摘要:from selenium import webdriver# 请求url url = "https://auctions.freemansauction.com/auction-lot-detail/A%2Dplatinum%2Dand%2Ddiamond%2Dlorgnette%2C/1593+++++++2+/++989817" mydriver = webdriver.PhantomJ... 阅读全文
posted @ 2017-04-27 15:27 淋哥 阅读(651) 评论(0) 推荐(0) 编辑
摘要:我们可以去使用正则去过滤掉他们 方法如下 心得:用最简单的方法去解决复杂的问题 阅读全文
posted @ 2017-04-27 15:27 淋哥 阅读(2512) 评论(0) 推荐(0) 编辑
摘要:http连接太多没有关闭导致的。 1、增加重试连接次数 requests.adapters.DEFAULT_RETRIES = 5 2、关闭多余的连接 s = requests.session() s.keep_alive = False 3、升级requests pip install --upg 阅读全文
posted @ 2017-04-27 15:12 淋哥 阅读(30916) 评论(0) 推荐(1) 编辑
摘要:import requests session = requests.session() carProposalUrl = "www.caaaa.com.cn/aaaa/aaaaa/carProposalproposal.do" carProposalHeaders ={ "Accept":"tex 阅读全文
posted @ 2017-04-27 15:11 淋哥 阅读(23089) 评论(1) 推荐(1) 编辑

点击右上角即可分享
微信分享提示