• python爬虫入门_踩过的坑 No1


      爬取网站:阿里巴巴招聘 使用python3.6    urllib  正则

    需求:爬取指定工作地点的岗位名称.

    import json
    from urllib import request
    
    headers = {
        "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36",
    }
    # 刚开始的url是 url=https://job.alibaba.com/zhaopin/positionList.htm?keyWord=cHl0aG9u&_input_charset=UTF-8&
    for i in range(10):
        url = "https://job.alibaba.com/zhaopin/socialPositionList/doList.json?pageSize=%d" % (i)
        # 获取 html 页面
        req = request.Request(url, headers=headers)
        response = request.urlopen(req)
        content = response.read().decode('utf-8')  # read 读取所有内容  decode 解码
        # 获取的时json数据
        data = json.loads(content)  # 装换成字典
        # print(data)
    
        datas = data.get('returnValue')
        data_list = datas['datas']  # 拿到字典
    
        for data_job in data_list:
            # print(data_list)
            job = data_job['name']
            print(job)

     

    • 爬虫是入门级别的, 非常简单. 但是在爬的过程中也遇到了些问题:

    1> 刚开始爬取的url是直接复制的 浏览器url输入框里面的url, 后来发现这个url爬取的html页面没有我想要爬取的信息.

    2> 查资料发现 我需要爬取的信息是 Ajax 动态生成的. 需要爬取的是 动态生成的Ajax页面. 

    3> 最后通过抓包工具拿到了这个 Ajax动态生成的 json 页面.成功的抓取到了想要的信息.

    非常简单的爬虫小案例, 写下来主要是想记录自己踩过的小坑!  大神请忽略.

  • 相关阅读:
    Git:常用命令记录
    JS笔记(二):隐式转换
    vertical-align/line-height:水平垂直居中
    JS笔记(一):声明提升
    Array.prototype.sort():从一道面试题说起
    CSS笔记(一):选择器规范
    FreeCodeCamp:Profile Lookup
    tile_images_offset的简单使用
    vs2013快捷键等(转)
    Qt状态栏的使用(转)
  • 原文地址:https://www.cnblogs.com/zhuyalong/p/11130206.html
Copyright © 2020-2023  润新知