1.数据抓取 数据集的获取是我们进行数据分析的第一步 。现在获取数据的主要途径一般为:现成数据;自己写爬虫去爬取数据;使用现有的爬虫工具爬取所需内容,保存到数据库,或以文件的形式保存到本地 。博主用的是用自己编写的爬虫代码获得数据 。(爬虫源代码可以找博主要,在评论区回复即可)
爬虫的设计思路 1.首先确定需要爬取网页URL地址 2.通过HTTP/HTTPS协议来获取相应的HTML页面 3.提取HTML页面里有用的数据 a.如果是需要的数据就保存起来 b.如果是页面里的其他URL,那就继续执行第二步 。
爬虫基本流程 发起请求 通过HTTP库向目标站点发起请求,就是发送一个Request,请求可以包含额外的header等信息,等待服务器的响应 获取响应内容 如果服务器正常响应,会得到一个Reponse,Reponse的内容便是所要获取的页面内容,类型可能有HTML,json字符串,二进制数据(如图片视频)等类型 。解析内容 得到的内容可能是HTML,可以用正则表达式,网页解析库进行解析,可能是json,可以直接转为JSON解析对象解析,可能是二进制数据,可以做保存或者进一步处理 。保存数据 保存的形式多种多样,可以保存成文本,也可以保存到数据库,或者保存特定格式文件
反爬虫机制与对策 1 通过分析用户请求的Headers信息进行反爬虫 。网站中应用的最多 2通过验证用户行为进行反爬虫,不如通过判断同一个ip在短时间内是否频繁访问对应网站等进行分析 。3通过动态页面增加爬取的难度,达到反爬虫目的 。对策 1 在爬虫中构造这些用户请求的headers信息,以此将爬虫伪装成浏览器 2 使用代理服务器并经常切换代理服务器方式,一般就能够攻克限制 。3.利用一些软件,比如selenium phantomJS就可以攻克 反爬虫的手段 :user-agent、代理、验证码、动态数据加载、加密数据
数据的选择与处理 1 网页文本 如HTML文档 json格式文本 2.图片 获取到的是二进制文件保存为图片格式 3.视频 获取的二进制文件保存为视频格式即可 4.其他 只要能请求到的,都能获取 解析方式 1 直接处理 2 json解析 3 正则表达式 4 BeautifulSoup 5 PyQuery 6 XPath
2.数据清洗 数据得到手,我们就需要对我们爬取的数据进行清洗工作,为之后的数据分析做铺垫,如果清洗的不到位势必会对之后的数据分析造成影响 。下文将从数据格式统一、空值处理 。
格式统一 去掉数据的空格中 在用爬虫进行数据爬取时用strip()对爬取的字符串进行处理 将中文数据转换为阿拉伯数字 例如1.7万变成17000,代码如下
def get_int(s):if s[-1]=="万":s=s[0:-1]s=int(float(s)*10000)else:s=int(s)return s
远行结果如下
if __name__ == \\\'__main__\\\':s="1.2万"price = get_int(s)print(price)#12000
推荐阅读
- 推荐3个赚钱小本生意 2021年适合做什么生意赚钱
- 做的好在家照样月入上万 3个无成本网赚方法
- 电脑配置选购攻略 买电脑主要看哪些方面
- 前景最好的3个小生意 农村开店卖什么好投资小利润大
- 手把手教你如何算土地的平方面积 平方米和亩的换算公式
- 外放无音的3个原因和对应措施 苹果手机没有外放声音怎么回事
- 封闭期是什么意思?新基金封闭3个月挣钱吗
- 大禹治水突出了大禹哪些品质内涵 大禹精神包含哪几个方面
- 新手最值收藏的3个优化技巧 淘宝直通车关键词优化技巧
- 解除文件大小受限的3个技巧 微信上传文件大小限制怎么办