python爬虫接单多少钱(记录一个标价400的单子)爬虫入门实战!
文章目录
- 前言
- 爬虫概览
-
- 一、项目需求
- 二、分析网页
-
- 1.找到所有页面的链接:
- 2.找到所有律师的个人页面链接:
- 三、开始爬取
- 个人总结:
- 零基础Python学习资源介绍
-
- 👉Python学习路线汇总👈
- 👉Python必备开发工具👈
- 👉Python学习视频600合集👈
- 👉实战案例👈
- 👉100道Python练习题👈
- 👉面试刷题👈
- 资料领取
前言
其实,我的爬虫技术也是业余的,野路子。写这些文章只能帮助初学者进行爬虫一个了解,能接一些小点的单子。但是真正要应聘爬虫工程师是远远不够的。后面有时间的话我也会进行学习爬虫(如selinum伪装成正常请求,安卓模拟器app爬虫)
爬虫概览
其实我们或多或少都是听说过爬虫这个概念,这个东西的技术栈其实也比较成熟了。
其实在我的理解中,爬虫嘛,就是给自己伪装一下,装成是正常的访问请求,然后获取到网站或者APP中的数据资源的一种技术手段。
当然目前大部分爬虫都是python写的,毕竟python丰富的第三方库资源还有语言优势摆在这里。所以,我们这里也是通过python进行爬虫的编写。
一、项目需求
一个香港的老板应该是,他给个网址
里面大概是这样的
点进去那个箭头的之后是个超链接,然后,要把这个信息爬下来。
需求挺明确的,而且这个网站,连一些基础的反爬手段都没有,非常适合用来入门实战。
二、分析网页
搞到所有律师的信息的流程清晰的分为两个步骤:
1.搞到所有律师的个人介绍的超链接;
2.然后再对所有链接进行访问。
可以看到哈,这个记录还是有点多的,11339条,30个记录一页。要全部拿下来不是一件简单的事,
1.找到所有页面的链接:
这个是第一页。
这个是第二页。
让我们来看看他的链接:
第一页: www.hklawsoc.org.hk/zh-HK/Serve…
第二页: www.hklawsoc.org.hk/zh-HK/Serve…
找到不同了嘛.第二页多出了一个字段:&pageIndex=2#tips 可以把这个数字换成1和3,试一下.
&pageIndex=1#tips
&pageIndex=3#tips
所以所有页面的规律就找到了,用来访问的链接如下:
python
复制代码
for i in range(1, 11339//30): print(i/(11339//30),end=' ') url = "https://www.hklawsoc.org.hk/zh-HK/Serve-the-Public/The-Law-List/Members-with-Practising-Certificate?name=&jur=&sort=1&pageIndex="+str(i)+"#tips"
这个规律真的很简单,所以就用来爬虫的入门了.
2.找到所有律师的个人页面链接:
这个就是一个页面分析的任务了。
还记得我们刚才是点这个链接访问的这个律师个人信息界面吧,这里面必然有着个人界面的超链接,我们需要的就是把它扒出来出来就可以了。下面我们在这个页面,按F12,查看,操作如下:
- 点击F12,进入下面的界面
2. 点箭头指向的按钮
- 然后点击你想扒出超链接的元素
点击后:
这个超链接很显眼了吧。点进去,正好是我们想要的链接。
三、开始爬取
还记得我们开始说的嘛,爬虫是封装成正常的请求去访问页面然后下载我们想要的资源,对吧所以,这里细化为两个步骤请求页面资源和解析页面资源找到我们想要的数据**(这里我们想要的是律师个人页面的超链接)**
- 这里先进行第一步:请求页面资源
爬虫的技术获取网页的手段最基础的就是python的requests方法了。我们这里用的也是这个方法。
requests的请求在这里也比较简单,就是简单的get请求,其实也有post的请求,网络上有很多资料,我这里就不赘述了。
简单的requests的get请求代码如下:
python
复制代码
import requests headers = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.0.0 Safari/537.36'} for i in range(1, 11339//30): print(i/(11339//30),end=' ') url = "https://www.hklawsoc.org.hk/zh-HK/Serve-the-Public/The-Law-List/Members-with-Practising-Certificate?name=&jur=&sort=1&pageIndex="+str(i)+"#tips" response = requests.get(url, headers=headers) html = response.content.decode('utf-8', 'ignore')
这里response就是我们请求下来的页面资源了,经过源码解析获取到了html
源码。
当然,你可能会有疑问这个headers从哪来的,哪里规定的。
每个浏览器都有自己的headers,因为headers要模仿你自己的浏览器向网页发送信息。如果使用Python进行爬取页面时,使用了别人的headers可能会导致爬取不到任何数据(因为代码在你自己的电脑运行,所以无法模拟别人的浏览器)
当然其实用别人也可以,有的网站他可能安全做的没有那么好,就都还可以正常访问。当然,所以如何查找自己headers也很重要,具体步骤如下:
- 随便打开一个网页,例如打开我们这个页面,右键点击‘检查’或者按F12,出现下图页面。
- 点击network
- F5刷新
4. 在name框随便点一个选项,在右侧点击‘headers’选项,在最下方找到‘User-Agent:’,粘贴到自己代码即可。如下图
个人总结:
这里主要是介绍一个爬虫的基本流程,能够帮助我们爬下来我们想要的页面源码。当然光爬下来源码是远远不够的,还需要各种规则(lxml、beautifulsoup以及正则表达式)的解析才能获取到从整个源码中获取我们想要的数据。
-END-
读者福利:如果大家对Python感兴趣,这套python学习资料一定对你有用
对于0基础小白入门:
如果你是零基础小白,想快速入门Python是可以考虑的。
一方面是学习时间相对较短,学习内容更全面更集中。
二方面是可以根据这些资料规划好学习计划和方向。
包括:Python激活码+安装包、Python web开发,Python爬虫,Python数据分析,人工智能、机器学习、Python量化交易等习教程。带你从零基础系统性的学好Python!
零基础Python学习资源介绍
① Python所有方向的学习路线图,清楚各个方向要学什么东西
② 600多节Python课程视频,涵盖必备基础、爬虫和数据分析
③ 100多个Python实战案例,含50个超大型项目详解,学习不再是只会理论
④ 20款主流手游迫解 爬虫手游逆行迫解教程包
⑤ 爬虫与反爬虫攻防教程包,含15个大型网站迫解
⑥ 爬虫APP逆向实战教程包,含45项绝密技术详解
⑦ 超300本Python电子好书,从入门到高阶应有尽有
⑧ 华为出品独家Python漫画教程,手机也能学习
⑨ 历年互联网企业Python面试真题,复习时非常方便
👉Python学习路线汇总👈
Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。(全套教程文末领取哈)
👉Python必备开发工具👈
温馨提示:篇幅有限,已打包文件夹,获取方式在:文末
👉Python学习视频600合集👈
观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。
👉实战案例👈
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
👉100道Python练习题👈
检查学习结果。
👉面试刷题👈
资料领取
这份完整版的Python全套学习资料已经上传网盘,朋友们如果需要可以点击下方微信卡片免费领取 ↓↓↓【保证100%免费】
北风之神c: 总结的很全面的爬虫,写得赞,博主用心了。 此国产分布式函数调度框架 funboost python万能通用函数加速器 https://funboost.readthedocs.io/zh-cn/latest/articles/c8.html , 只需要@boost一行代码,加到任意新/旧爬虫项目就又强又自由又简单。 funboost 分布式函数调度框架,定位于调度用户的任何函数,只要用户在函数里面写爬虫代码,就可以分布式调度爬虫, 并且对爬虫函数施加30种控制功能,例如 qps恒定 任何时候随意关机重启代码消息万无一失确认消费 非常简单的开启多进程叠加线程/协程,这些强大的功能绝大部分爬虫框架还做不到。 此框架如果用于爬虫,不管从任何方面比较可以领先scrapy 20年,也比任意写的爬虫框架领先10年。 普通爬虫框架一般就设计为url请求调度框架,url怎么请求都是被框内置架束缚死了, 所以有些奇葩独特的想法在那种框架里面难以实现,用户需要非常之精通框架本身然后改造框架才能达到随心所欲的驾驭的目的。 普通的爬虫框架与用户手写requests 请求解析存储,在流程逻辑上是严重互斥的,要改造成使用那种框架改造需要大改特改。 而此框架是函数调度框架,函数里面用户可以随意写一切任意自由想法,天生不会有任何束缚。 使用funboost爬虫,与用户使用别的爬虫框架或者无框架用户手写多线程爬虫相比, funboost都代码更少更强更简单更自由。 pip install funboost 或者是直接使用 pip install boost_spider (powerd by funboost ,boost_spider比funboost增加了更加专门的针对爬虫请求和解析和存储) https://github.com/ydf0509/b
lihanlinjlu: 就没个活人吗?不是卖课的就是卖课的
weixin_46151221: 博主,您好,我这边想问下您关于第四个某东商城某商品评论数据的爬取。这个是怎么实现的呢
nai598455803: 看到你是卖课的我就放心了
2401_84810384: 都是运行不出来的代码