河北省建设厅官方网站,网站策划的具体内容是什么,班级网站首页设计,手游传奇网站我是半路从一个纯小白学过来的#xff0c;学习途中也掉过许多坑#xff0c;在这里建议新手要先把基础打扎实#xff0c;然后再去学习自己需要的内容#xff0c;不要想着全部学完再用#xff0c;那样你是永远学不完的#xff0c;用哪方面就学习哪方面的内容#xff0c;不… 我是半路从一个纯小白学过来的学习途中也掉过许多坑在这里建议新手要先把基础打扎实然后再去学习自己需要的内容不要想着全部学完再用那样你是永远学不完的用哪方面就学习哪方面的内容不要贪多哟。
我当初想到学python是为了能在工作中提升工作效率另一个也是兴趣还有就是python入门快。相信大多数小伙伴也是这个原因才学python的。
python的关键词很少入门很简单但是想要深入还是要去用心去研究的。同时还要有耐心因为有些资料在查询的时候网上给的答案很杂你需要自己去筛选有用的信息没有耐心是不行的有时候为了弄明白一个功能如何实现我可能要查找几个小时的资料并自己测试可行性这是很费时间的。当然你学会了以后对自己的好处也是很大的下次再有类似的应用就简单的多了可以举一反三的去实现。
那么python入门之后呢要用到实处才行有的公司的工作需要到网上去查找资料做分析有的是找别人的资料比如百度等有的是自己公司的内部资料比如我。因为工作需要我需要爬取公司的案件数据并把数据整合起来保存成表格。因为我有一点python的底子熟悉工作流程之后就开始着手写自己需要的功能去把一些固定的、重复的工作交给python来做。
第一步先找到所需要的网址URL
打开网站按F12打开开发者模式找到所需要的网址、请求方法和headers信息 找到网址和请求方法后就可以知道去哪里用什么方法去获取数据了。
网址是我公司的系统网址没有用户和密码是登录不上去的这里只是做个展示
有需要的酱友可以找其它的网站爬取内容。我用的requests来爬取本来想实现模拟登录来保存cooking目前还没有研究明白就略过了。。
第二步分析网址的变化
找到这两个信息之后就可以开始了先把网址URL和headersheaders的作用是用来模拟浏览器信息的要不会被反爬保存上
url http://api.smart-insight-service.com:40423/case_medical?apaginate_1658047475149
headers {Accept:application/json, text/javascript, */*; q0.01,Accept-Encoding:gzip, deflate,Accept-Language:zh-CN,zh;q0.9,Authorization:,Connection:keep-alive,Host:api.smart-insight-service.com:40423,Origin:http://saas.smart-insight-service.com:40423,Referer:http://saas.smart-insight-service.com:40423/case/case_search/detail.html,User-Agent:Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36}Authorization为空是因为不能自动获取需要手动粘贴过来而且由于隐私原因我也不能粘贴过来。有这些信息其实就可以爬取网站的数据了不过这个是默认的主页信息还需要找到关键词来定位到自己需要的信息那里。比如我想找批次号为BJ-GGDE210421的批次信息就要输入然后查询对比一下两个URL的不同点第一个是原网址第二个是带有参数的网址
url http://api.smart-insight-service.com:40423/case_medical?apaginate_1658047475149
url http://api.smart-insight-service.com:40423/case_medical?apaginatebatch_noBJ-GGDE210421_1658047475152看到区别了吗就是aXXX后面多了一个**batch_noBJ-GGDE210421**这个是那个我要查找的批次。
第三步开始获取数据
准备好之后就可以获取数据了代码如下
def 获取案件信息(url, headers):s requests.Session()s.mount(http://, HTTPAdapter(max_retries3))s.mount(https://, HTTPAdapter(max_retries3))try:req s.get(urlurl, headersheaders, timeout20)r req.json()a r.get(msg)if a 请求成功:datas r.get(data) # 案件列表要分离2次案件详情分离1次。else:datas aprint(a)except Exception as e:# 输出错误提示print(datetime.now())exstr traceback.format_exc()print(fexstr {exstr})print(fe {e})datas {}return datasrequests.Session() 这个功能不太清楚是做什么了这就是不做注释的后果各位新酱友要以我为戒千万不要不写注释。关于用中文这是我个人的一个想法对于英文不好的人用中文来把一些有关联的地方替换掉很容易就明白什么意思有助于理解不过不建议这么做酱友们还是要按照大佬们的建议规范的写代码命名也规范命名。要是团队合作规范是必须要遵守的。我这样只是单打独斗自己用用还行团队肯定不合适我也需要去改。
max_retries3这个参数是重连次数我的是重新连接3次这个可以根据实际情况设置
timeout20这个参数就是连接等待时长了单位是秒由于我们系统原因我需要设置时间很长才行要不会连接失败这个也是视实际情况设置了。
获取到全部数据后要用json() 这个函数转换成字典形式这样利于提取数据。
第四步定位数据字段
我现在需要这个批次下所有的案件号和案件数据那我就要去知道在哪里去提取。同样F12打开输入批次号查询然后点击控制台。 左边的红框是我想要的信息内容右边是要提取信息的地方打开右边的红框 有以下几个字段msg是请求状态我上面的代码提取这个字段就是判断一下请求成功没有。status是状态码200是请求成功。重点来了data字段里才是我们需要的内容打开看看
data里面有page字段这个里面是页面信息有需要页面信息了再从这里找略过。
data里面还有个data字段是个需要二次提取的地方我上面的代码有注释也是怕自己忘记 最后提取数据
再次点开data就出现了一个列表里面就是我所需要的信息了那么怎么提取出来呢
def 获取案件信息(url, headers):s requests.Session()s.mount(http://, HTTPAdapter(max_retries3))s.mount(https://, HTTPAdapter(max_retries3))try:req s.get(urlurl, headersheaders, timeout20)r req.json()a r.get(msg)if a 请求成功:datas r.get(data) # 案件列表要分离2次案件详情分离1次。else:datas aprint(a)这个函数里已经提取了一次因为案件详情只要提取一次就行所以这里只提取一次如果需要提取两次的可以再提取一次就像是获取字典的值一样方便dataset r[‘data’][‘data’]这样就可以直接提取两次了
在这里说一下字典的 .get 这个用法看过一些公众号说这个好用其实是看怎么用我把我的字典获取值都改成 .get 了然后就发现代码有点啰嗦了。如果你能确定获取的字典里必定会有这些内容的话就直接a dict[‘key’] 来提取值就行除非是一些不确定的地方用 .get 来提取会防止因为没有这个键导致程序出错而停止运行。
下面是把我需要的一些关键数据写成函数批量提取出来提取成了字典方便查找数据
def 提取案件列表个案详情(x):if x:姓名 x.get(name)批次号 x.get(batch_no)案件号 x.get(no)身份证号 x.get(id_no)上传时间 x.get(case_data).get(upload_time)回传时间 x.get(case_data).get(send_time)案件状态 x.get(case_status) # 案件的各种状态,可检查核查状态案件id x.get(case_id)审核员 x.get(user).get(nickname)理算状态 x.get(adjuster_name)理算标识 x.get(adjuster_status)身份证号 x.get(id_no)核查状态 x.get(check_name) # 和核查校验是一个核查校验 x.get(is_check)data {姓名: 姓名,批次号: 批次号,案件号: 案件号,身份证号: 身份证号,上传时间: 上传时间,回传时间: 回传时间,案件状态: 案件状态,案件id: 案件id,审核员: 审核员,核查状态: 核查状态,理算状态: 理算状态,理算标识: 理算标识,身份证号: 身份证号,核查校验: 核查校验}else:data {}print(没有案件列表信息)return data看看那么多 .get 有什么感想我看着是有点别扭的不过费了半天时间把所有函数都改了就不动了后面我重新写程序的时候就不这么写了
上面的代码就是把列表内所有的案件的信息都提取出来了列表打开之后还是个字典的样式直接找自己要的字段即可。 我框了几个字段可以对照看看 这只是提取一条的数据还要用for循环来获取列表里的全部内容下面是个代码示例
for x in datas:a 提取案件列表个案详情(x)这样我所需要的内容就全部提取出来存入字典里了然后就是写入excel表格导出来了。
总结
看其实爬虫就是这么简单有时候直接获取后端数据即可。当然我要学习的地方还很多。比如提取前端的数据多协程获取数据等。
个人感悟学习不是你学习了多少而是你用上了多少只有你用上的才是有用的所以学python不要想着我把这些都学完再写程序那样是学习不好的每天都会有大量的库更新会有更好的库出现你永远学不完把自己能用上的学好就行不是学的多就好。学以致用就这样。
怎样快速掌握变现级爬虫
很多人都表示高阶的爬虫技术不好学也找不到有价值的项目练手每个人都在期待一套能快速进阶的速成方案。
想要快速学好爬虫尤其是可以用于变现的高阶爬虫技术在这里蛋糕特意给大家准备了一套python编程资料能够帮你到你从零基础到python高阶爬虫的学习。 朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】。 Python学习路线汇总
Python所有方向的技术点做的整理形成各个领域的知识点汇总它的用处就在于你可以按照上面的知识点去找对应的学习资源保证自己学得较为全面。全套教程文末领取哈
Python必备开发工具 温馨提示篇幅有限已打包文件夹获取方式在文末
Python学习视频600合集
观看零基础学习视频看视频学习是最快捷也是最有效果的方式跟着视频中老师的思路从基础到深入还是很容易入门的。
实战案例
光学理论是没用的要学会跟着一起敲要动手实操才能将自己的所学运用到实际当中去这时候可以搞点实战案例来学习。
100道Python练习题
检查学习结果。
面试刷题 资料领取
上述这份完整版的Python全套学习资料已经上传CSDN官方朋友们如果需要可以微信扫描下方CSDN官方认证二维码输入“领取资料” 即可领取
文章转载自: http://www.morning.zwhtr.cn.gov.cn.zwhtr.cn http://www.morning.lwbhw.cn.gov.cn.lwbhw.cn http://www.morning.fplqh.cn.gov.cn.fplqh.cn http://www.morning.tqfnf.cn.gov.cn.tqfnf.cn http://www.morning.rydhq.cn.gov.cn.rydhq.cn http://www.morning.mdlqf.cn.gov.cn.mdlqf.cn http://www.morning.tnyanzou.com.gov.cn.tnyanzou.com http://www.morning.mjtft.cn.gov.cn.mjtft.cn http://www.morning.mnqz.cn.gov.cn.mnqz.cn http://www.morning.cklld.cn.gov.cn.cklld.cn http://www.morning.ptqpd.cn.gov.cn.ptqpd.cn http://www.morning.nxzsd.cn.gov.cn.nxzsd.cn http://www.morning.yfcyh.cn.gov.cn.yfcyh.cn http://www.morning.lxfdh.cn.gov.cn.lxfdh.cn http://www.morning.jrrqs.cn.gov.cn.jrrqs.cn http://www.morning.rjjjk.cn.gov.cn.rjjjk.cn http://www.morning.gwjsm.cn.gov.cn.gwjsm.cn http://www.morning.sgbsr.cn.gov.cn.sgbsr.cn http://www.morning.pqcrz.cn.gov.cn.pqcrz.cn http://www.morning.wrbf.cn.gov.cn.wrbf.cn http://www.morning.krrjb.cn.gov.cn.krrjb.cn http://www.morning.clybn.cn.gov.cn.clybn.cn http://www.morning.ccpnz.cn.gov.cn.ccpnz.cn http://www.morning.ykyfq.cn.gov.cn.ykyfq.cn http://www.morning.djbhz.cn.gov.cn.djbhz.cn http://www.morning.qkqjz.cn.gov.cn.qkqjz.cn http://www.morning.qrhh.cn.gov.cn.qrhh.cn http://www.morning.zqbrd.cn.gov.cn.zqbrd.cn http://www.morning.kflbf.cn.gov.cn.kflbf.cn http://www.morning.lylkh.cn.gov.cn.lylkh.cn http://www.morning.jcbmm.cn.gov.cn.jcbmm.cn http://www.morning.fpjxs.cn.gov.cn.fpjxs.cn http://www.morning.yrmgh.cn.gov.cn.yrmgh.cn http://www.morning.phcqk.cn.gov.cn.phcqk.cn http://www.morning.nhrkl.cn.gov.cn.nhrkl.cn http://www.morning.cnfjs.cn.gov.cn.cnfjs.cn http://www.morning.mqmxg.cn.gov.cn.mqmxg.cn http://www.morning.pzbqm.cn.gov.cn.pzbqm.cn http://www.morning.fdsbs.cn.gov.cn.fdsbs.cn http://www.morning.thxfn.cn.gov.cn.thxfn.cn http://www.morning.ndnhf.cn.gov.cn.ndnhf.cn http://www.morning.zqsnj.cn.gov.cn.zqsnj.cn http://www.morning.807yy.cn.gov.cn.807yy.cn http://www.morning.knjj.cn.gov.cn.knjj.cn http://www.morning.rldph.cn.gov.cn.rldph.cn http://www.morning.nswcw.cn.gov.cn.nswcw.cn http://www.morning.bmts.cn.gov.cn.bmts.cn http://www.morning.snccl.cn.gov.cn.snccl.cn http://www.morning.wlsrd.cn.gov.cn.wlsrd.cn http://www.morning.cylbs.cn.gov.cn.cylbs.cn http://www.morning.xrmwc.cn.gov.cn.xrmwc.cn http://www.morning.ygflz.cn.gov.cn.ygflz.cn http://www.morning.fwcjy.cn.gov.cn.fwcjy.cn http://www.morning.yqjjn.cn.gov.cn.yqjjn.cn http://www.morning.zyslyq.cn.gov.cn.zyslyq.cn http://www.morning.wnhgb.cn.gov.cn.wnhgb.cn http://www.morning.flpjy.cn.gov.cn.flpjy.cn http://www.morning.bby45.cn.gov.cn.bby45.cn http://www.morning.kybyf.cn.gov.cn.kybyf.cn http://www.morning.wnjsp.cn.gov.cn.wnjsp.cn http://www.morning.bqqzg.cn.gov.cn.bqqzg.cn http://www.morning.qjmnl.cn.gov.cn.qjmnl.cn http://www.morning.qtnmp.cn.gov.cn.qtnmp.cn http://www.morning.qfplp.cn.gov.cn.qfplp.cn http://www.morning.gkdqt.cn.gov.cn.gkdqt.cn http://www.morning.wphzr.cn.gov.cn.wphzr.cn http://www.morning.whnps.cn.gov.cn.whnps.cn http://www.morning.yznsx.cn.gov.cn.yznsx.cn http://www.morning.yxgqr.cn.gov.cn.yxgqr.cn http://www.morning.lwtfr.cn.gov.cn.lwtfr.cn http://www.morning.dndjx.cn.gov.cn.dndjx.cn http://www.morning.bcdqf.cn.gov.cn.bcdqf.cn http://www.morning.dkbgg.cn.gov.cn.dkbgg.cn http://www.morning.plqqp.cn.gov.cn.plqqp.cn http://www.morning.ayftwl.cn.gov.cn.ayftwl.cn http://www.morning.nckjk.cn.gov.cn.nckjk.cn http://www.morning.bzqnp.cn.gov.cn.bzqnp.cn http://www.morning.ryxgk.cn.gov.cn.ryxgk.cn http://www.morning.hlnys.cn.gov.cn.hlnys.cn http://www.morning.htfnz.cn.gov.cn.htfnz.cn