【吐槽】真心没有写代码的天赋
- kaidokido目标:准备扒http://rcpu.cwun.org/UnInfo.aspx上面全部单位的资料
现有情况:听说过python爬虫,有点C语言基础,10多年前看过WinAPI,最多也就Excel 的VBS。
本周一8.5 安装了python,WingIDE(pycharm太卡。。sublime不会配置。。)。开始网上看python基础,比如菜鸟 runoob,廖雪峰,莫烦
边看教程,边学着 从hello world开始撸代码,
周二,开始研究网站的F12。。。弄了大半天才搞清楚。。周二下午知道正则表达式,Beautifulsoup(莫烦这个教学简单易懂)
周三:继续撸代码,因为有表格,开始看pandas。。。
周四:pandas转dict搞了一天。。。中文内容少的可怜,只能看English版本的help 终于找到的 dataframe.to_dict("index")
一共大概20000多家公司,公司的基本信息、资质信息等都在不同的页面。
现在有个大问题,用的是urllib,单线程,只设置了timeout 和 time.sleep,没有多线程,没有代理池,一旦中断不知道咋整,只能撸回一个页面就写入csv( 后面打算用json导入到mongodb中)。效率真TM低下。。
还没有看scrapy。。不知道mongodb的查询语法(嵌套的字典,作为document)
现在网站也比较简单,没有反爬。。。没有复杂的复杂的Ajax 没有动态显示等页面。
麻蛋的 中文搜索出来,大部分都是一言半语的没用的信息。。东抄抄西抄抄。。
=====================
问题:
1、你们写爬虫的历程是啥?给个学习路径
2、你们有没有github上 比较厉害的开源爬虫实战?
3、怎么分析目标网站啊? - kaidokido这个目标网站我是 硬找 各个页面的 。
首页那个动态显示,我压根就不知道怎么看。。。 - yxmrFirefox F12+xpath
- kaidokido2019-08-08 22:39:04.141761 开始爬的
到现在 进度才4.758%。。。。 - kaidokido
- Rorysky一开始 不要用 太多第三方库 iOS fly ~
- MR.L写过一个,感觉没啥意思,主要是把数据趴下来做统计(一万四的数据量),也是看d版推荐的一本书,py确实适合干爬虫
- antonychan多线程。。。代理池。。。速度就上去了
- 林爱丰你这进度已经挺快了。python有问题一般就是把问题自己翻译成英文去StackOverflow上去找答案,最靠谱。
- bigctime马克一下,我也没有小尾巴~
- sjfhipda
- 林爱丰给你一个参考,加入了retry,timeout,proxies再搞个pool就好了复制代码
- import requests
- from requests.packages.urllib3.util import Retry
- from requests.adapters import HTTPAdapter
- re_try_num = 3 # 重复次数
- gap_time = 1 # 间隔时间
- retries = Retry(total=re_try_num, backoff_factor=gap_time, status_forcelist=[502, 503, 504], method_whitelist=frozenset(['GET', 'POST']))
- def http_get(remote_url, retries, verify, data_dict, timeout, header, proxies):
- try:
- with requests.Session() as s:
- s.mount("http://", HTTPAdapter(max_retries=retries))
- r = s.get(remote_url, verify=verify,
- data=data_dict, timeout=timeout, headers=header, proxies=proxies)
- return r
- except Exception as x:
- print("Connect Error: ", x.__class__.__name__)
- import requests
- forfunjs会吧,用node写
- linlance200013楼是死电工。。。死电工都这样,换来换去,结果任务拖后。。。
楼主不错了,虽然我知道python爬虫不错,不过我还是先上量化交易了,毕竟先要挣钱吃饭。
爬虫?是不愁收入的人的事情。。 - chim
- linlance2000说对了,破产边缘,郁闷。。。第一年巨亏。。。目前第二年了,还没统计,但是账户上亏损扩大了。
- 嘻哈小寒既然用了python,http客户端麻溜儿换requests吧,简单易用 iOS fly ~
- 最低购[初学python][已解决循环问题,代码完美]自动复制起点章节python+Selenium脚本。
十几行代码的事。书荒点我 - ResetLife从零开始2周写出一个针对excel的数据比对系统,用了pandas,异步操作等等,真的是疯狂百度和谷歌……
iOS fly ~ - kaidokido
- kaidokido
- GleeU这么一点事就被打击了?
大拿都是天天啃 夜夜啃 通宵啃 这么一点点吃透的 - kaidokido
- kaidokido
- MR.L回复2#kaidokido
post请求的地址是:http://rcpu.cwun.org/UnInfo.aspx
post请求地址时,你需要传递的参数如下图:
找到这些规律后,就可以 import requests
然后去构造requests.post请求了 - kaidokido
- forfun
- alvise说实话还不如java写呢,虽然呆板点,但是语法简单,库也多,好上手
- kaidokido
- roadlala那这么比我更不适合了,跟lz基础差不多,今年上手的,header随便copy了一个,用request就跑起来了
代理池懒得学,所以想了个偷懒办法,先翻页把所有目标链接地址都保存到csv,然后睡觉的时候读csv慢慢爬,爬过的做个标识,以便中断再继续
页面分析更懒,基本都直接复制xpath的绝对地址定位
现在的水平吧,30分钟可以做个在线视频学习的挂机脚本
代码写的很三脚猫,但是省时省力省心就能实现目标,我觉得python既然门槛低,就充分利用这个特性呗 - volcano200对我来说是天书 iOS fly ~
- jtxql跟我相比你们都是牛人。
- 4color直接用火车头吧。
- langzer马克看不懂
- lokta
- 屋大维虽然python入门简单,但楼主这气势是真的要7天精通一门语言的感觉
- xiaotianhupuppeteer才是神器 从此再也不怕写爬虫 iOS fly ~
- tsounny
量化交易挣了多少钱呢
- guangjian不错不错
- amx_002excel那是 vba
- 郁鸟马克一下HiPDA·NG
- wilburt撸主辛苦的土里刨食扒代码,
幸运已经离开这个行业了。 - mijuu现在互联网一个基本的应用,实际涉及到的技术层面还是很多的,你这个不仅是python ,还有http协议,多线程,数据库这些需要了解。
而且如果想用mongodb的话,数据格式是json,shell是js,你可能还会要学点js的内容 - 尤舒拉回复1#kaidokido
LZ很不错了,我以前是做机房运维的,最多用oracle,MY SQL ,SQL server写一点简单的语句提取所需的数据,以前啥编程语言都没学过,现在到魔都来了,我这家单位让一家信息公司做OA平台,让我也学,SQL server倒是看懂一点点,c#完全看不懂啊,我想学编程,但是不知道从何下手,另外透露一下,我的函数一点不会,初中开始,就不学数学了,所以大学才读个二类本科,中文系,也是因为不用学高数才读的这个专业。求各位大拿推荐下,像我这种情况,究竟怎么学编程?题外话:本人现年36了... - kaidokido
- kaidokido
- fqxufo