http://weibo.com/p/1001018008644010000000000/checkin?page=4#Pl_Core_F4RightUserList__34 这个网址,显示的是在在广州这里签到过的人。老板想一个个把名字复制下来。我不知道怎么爬。只是找到把网页源代码复制下来然后用正则表达式选出来。但是一次性只能选 10 个人,效率好低啊。谁知道怎么解放双手么?
1
chens 2016-04-01 12:05:43 +08:00
运的一手好营~
|
2
ioriwong 2016-04-01 12:07:27 +08:00 via Android
我建议慢慢手工爬,这么爽拿工资的方式,实在难得
|
4
herozzm 2016-04-01 12:10:45 +08:00
请问你的职位称呼?
|
5
zythum 2016-04-01 12:11:34 +08:00
网页源代码复制 表达式选出来 10 个人。 你把这步骤写成自动化的不就好了....
|
6
icedx 2016-04-01 12:15:48 +08:00
|
7
royzheng 2016-04-01 12:36:24 +08:00
找个下载器 批量下载页面下来 再分析正则 done
|
11
xjchenhao 2016-04-01 13:40:18 +08:00
我用 node 爬过类似的, 你会 node 吗?
|
12
Tuccuay 2016-04-01 13:40:48 +08:00 2
|
13
marcolee 2016-04-01 14:00:12 +08:00
不能直接爬,要先拿到 cookie ,请求时要带上 cookie 。因为他的 html 都是用 js 来生成的,所以要用 phantomjs 来解析。
|
16
wubotao 2016-04-01 14:41:09 +08:00
用 Python 爬一下网页不可以么,就是把手工的过程改成自动了。
|
18
thinkmore 2016-04-01 15:25:43 +08:00
正则没写好
|
20
vidli2ex 2016-04-01 17:18:41 +08:00
愿意付费的话,私信我。
|
21
prccn 2016-04-01 18:14:48 +08:00
叫老板开双份薪水:运营 + 爬手
|
22
xshf12345 2016-04-01 18:24:02 +08:00
python 写
|
23
FUCKEX2 2016-04-01 18:26:25 +08:00
愿意付费的话,私信我。 C++写~ so easy
|
24
lazarus 2016-04-01 18:33:39 +08:00
LZ 不是码农?
python 写个脚本简直分分钟啊 |
26
popok 2016-04-01 20:53:32 +08:00
@Tuccuay 大概看了下,这个广州好像是类似一个分类的大目录,没有具体的 poiid 的,这个 API 只能通过具体的 poiid 获取签到的列表,而且有频率限制。
虽然 api 方便简单,但是这里直接爬页面其实也不错的 |
27
binux 2016-04-01 21:05:13 +08:00
既然老板让你手动抓的,他还付你工资。。。
那你就一天写个自动的,然后说我一个月都在手动抓 |
28
ebony0319 OP @lazarus 在去年出车祸之前我还会 c , c++, lua , JAVA ……然后什么都很模糊了,记忆一些东西很困难。但是现在还是能够看得懂一些你们写的东西,谈论的一些话题。
|
30
techmoe 2016-04-01 22:40:55 +08:00
python 应该分分钟解决
啊如果付费明天我看下好了,正好这几天放假学生党赚点零花钱也不错 w |
32
lazarus 2016-04-01 23:17:17 +08:00
@ebony0319 粗略写了下,需要把里面的 YOUR_COOKIE 替换成你的 cookie :
################################## import requests, re, time headers={ 'Cookie': YOUR_COOKIE } base_url = 'http://weibo.com/p/1001018008644010000000000/checkin?page=%s' def append_to_file(text, filename): with open(filename, 'a') as f: f.write(text) def get_page(page): r = requests.get(base_url % page, headers=headers) print r.text.encode('utf-8') return '\n'.join([x.encode('utf-8') for x in re.findall('<strong usercard=\\\\"[^"]+" >([^<]+)<\\\\/strong>', r.text)]) sleep_interval = 5 for p in xrange(1, 35612): nicks = get_page(p) retry_count = 0 while len(nicks) == 0: retry_count += 1 time.sleep(retry_count * sleep_interval) nicks = get_page(p) append_to_file(nicks, 'data/nicks.txt') ################################## weibo 有限流措施,懒得去研究怎么突破了,就用了最简单的 sleep + retry ,就放着慢慢跑就是了 如果需要我来帮你跑,回复我吧 |
33
lazarus 2016-04-01 23:18:03 +08:00
呃,代码缩进乱掉了
|
35
ebony0319 OP @4679kun
@horizon 那时候晚上十点样子,一个女司机跟他老公在沿江大道试新车,结果把自己给撞死了,老公为了防止后面的车来就去拦车,大货车拦不住直接就撞死了。不知道哪个智商低的把那种木粱横在路上拦车,我发现的时候已经只有三米了。煞不住了,直接飞出去了。后面接连发生了几十起车祸,第四位后脑勺直接消去四分之一。 重点来了,深夜不要点图,不要点图,不要点图。当时的车祸拍照。 https://ssl.moefq.com/image/LqgCh |
37
lazarus 2016-04-02 00:02:52 +08:00 1
@ebony0319 不好意思,这个只是示意行的代码,还是很简陋,我刚刚跑了下发现 111 页往后的内容获取不到了,暂时没时间去深究了
|
38
WhyLiam 2016-04-02 01:49:28 +08:00
火车头,妥妥的
|