Python 爬取拉钩网异步加载页面

如下是我简单的获取拉钩网异步加载页面信息的过程
获取的是深圳 Python 岗位的所有信息,并保存在Mongo中
(对于异步加载,有的人说是把你要爬页面的信息整个页面先爬下来,保存本地,然后再看有没有你要的东西,有不是异步,没有就是异步;这种方式当然是没有任何问题,但是我的判断方式是,当我点击页面某个位置时,页面的链接并没有变化,而内容却发生了变化,这种我就说它是异步加载,当然,异步加载方式很多,我们要具体网站具体分析)
这个东西完全可以封装成类,各司其职(这里就可以延伸到Scrapy框架) 后面会更新一个使用Scrapy框架抓取信息的教程
当然还有selenium+phantomjs

直接上代码

import requests
import json
import pymongo

headers = {
'Referer':'https://www.lagou.com/jobs/list_Python?px=default&city=%E6%B7%B1%E5%9C%B3',
'User-Agent':'Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:57.0) Gecko/20100101 Firefox/57.0'}
# headers中的Referer参数是必须的,?号之前都是必须的后面可以省略,不会对结果有影响
pagenum = 1
key = 'Python' #这里可以设置一个列表,先抓取页面所有的技术名称,保存起来,然后抓取职位信息的时候循环嵌套遍历
first = 'true'#可以不要,没发现有什么作用
post_data = {'first': first,'kd':key,'pn':pagenum}
#first:代表是不是首页,kd:代表关键字,pn:代表第几页
json_url =  'https://www.lagou.com/jobs/positionAjax.json?px=default&city=%E6%B7%B1%E5%9C%B3&needAddtionalResult=false&isSchoolJob=0'

#获取json内容
def get_content(post_data):
    r = requests.post(json_url,headers=headers,data=post_data)
    datas = json.loads(r.text)
    return datas['content']
#获取mongo连接
def get_connect():
    client = pymongo.MongoClient('localhost', 27017)
    lagou = client['panpan']
    lagoudt = lagou['lagou']
    return  lagoudt
#数据写入数据库
def to_mongo(results):
    lagou = get_connect()
    for result in results:
        lagou.insert(
        {'positionName' : result['positionName'],
        'positionLibles' : ','.join(result['positionLables']),
        'workYear' : result['workYear'],
        'education': result['education'],
        'salary' : result['salary'],
        'city' :  result['city'],
        'financeStage' : result['financeStage'],
        'industryField' : result['industryField'],
        'createTime' : result['createTime'],
        'positionAdvantage' : result['positionAdvantage'],
        'companySize' : result['companySize'],
        'district' : result['district'],
        'companyShortName' : result['companyShortName'],
        'companyFullName' : result['companyFullName'],
        'firstType' : result['firstType'],
        'secondType' : result['secondType'],
        'subwayline' : result['subwayline'],
        'stationname' : result['stationname'],
        'linestaion' : result['linestaion']})
    

total_page =  get_content(post_data)['pageSize'] #总页数
#循环每一页的内容
for page in range(1,total_page+1):
    first = 'false'
    print(page)#记录当前页码
    post_data = {'kd':'Python','pn':page}
    data = get_content(post_data)
    to_mongo(data['positionResult']['result'])

这明细是一个异步加载的例子,我就不多说了,前面有


图片.png

这个一看就是通过Ajax 实现的异步加载吗,而且Response里返回的JSon内容就是我们需要的呀,直接取不就行了,话不多说,直接看上面代码,有疑问的可以给我留言,我也是刚开始学,有问题的地方,请您指正


图片.png
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,126评论 6 481
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,254评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 152,445评论 0 341
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,185评论 1 278
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,178评论 5 371
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,970评论 1 284
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,276评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,927评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,400评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,883评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,997评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,646评论 4 322
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,213评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,204评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,423评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,423评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,722评论 2 345

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 171,498评论 25 707
  • 原文出处: Cer_ml 1.目标 这两天要弄一个大作业,从水木社区和北大未名社区的实习板块,爬取实习信息,保存在...
    PyChina阅读 921评论 0 5
  • Selenium的Webdriver爬取动态网页效果虽然不错,但效率方面并不如人意。最近一直研究如何提高动态页面爬...
    Rabin_xie阅读 8,628评论 10 43
  • 你是年少的欢喜 也是心头的朱砂 白玫瑰是你 红玫瑰也是你 别人眼中的欢喜冤家 我们终究还是错过了 至此经年 我还好...
    最无羡阅读 416评论 0 3
  • 节气马上就是夏至了。 炎热的北京比以往多了许多凉爽,空中的云彩也变成了一朵一朵。在透蓝的天空下映衬的如此绵柔可弹。...
    rainbowchao阅读 302评论 0 1