成功爬智联

还记得刚开始学习爬虫的时候,曾经想拿智联练手,无奈发现点开首页竟是这样的…
在这里插入图片描述
一看是要手机登录了,然后就没有然后了…

后来继续学习爬虫,终于感觉学的差不多了,就回过头来攻克智联,没想到还是不知道怎么下手,但是我偶然发现:

在我的登录之后,把那个url复制之后重新打开,居然,,,打开了!!!

在这里插入图片描述

这可是一个大坑,简直就是发现新大陆!

接着就是爬取啦,so easy!

习惯性地想用xpath,但是查看网页源代码,发现什么都找不到,于是在Network中发现这是json,如下

在这里插入图片描述

接下来就是爬取啦,以下是完整代码,嘻嘻

# coding=utf-8
import requests
import json
from pymongo import MongoClient

headers = {
   'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.140 Safari/537.36 Edge/17.17134',
}

def parse_url(url):
    print(url)
    response = requests.get(url=url, headers=headers)
    return response.content.decode()

def get_content_list(json_str):
    dict_ret = json.loads(json_str)
    content_list = dict_ret["data"]["results"]
    return content_list

def save_content_list(content_list):
    # 写入txt
    # with open("zhilian.txt", "a", encoding="utf8") as fp:
    #     for content in content_list:
    #         fp.write(json.dumps(content, ensure_ascii=False))
    #         fp.write("\n")
    # print("保存成功")

    # 写入MongoDB,实例化client,建立连接
    client = MongoClient(host="127.0.0.1", port=27017)  # 本地则括号内不用写
    collection = client["test"]["zhilian2"]  # 第一个中括号是库,第二个是集合
    collection.insert(content_list)
    print("保存成功")

def main():

    url_temp = 'https://fe-api.zhaopin.com/c/i/sou?start={}&pageSize=90&cityId={}&kw={}&kt=3&=0&_v=0.37871776'

    kw = input("请输入关键词:")
    city = input("请输入城市:")

    num = 0
    while True:
        url = url_temp.format(num, city, kw)
        # 发送请求,获取响应
        json_str = parse_url(url)
        # 提取数据
        content_list = get_content_list(json_str)
        # 保存
        save_content_list(content_list)
        # 小于90则是最后一页
        if len(content_list) < 90:
            break
        # 构造下一页url
        num += 90  # 每一页的pagesize


if __name__ == '__main__':
    main()

实战真的能学到更多呢,继续进步!

基于Python的网络爬虫使用了tkinter图形操作界面来增加毕业设计的工作量,并且目标网站是智联招聘。它可以通过智联招聘网站获取各个职业的薪资、技能要求、工资地点等信息,并将这些信息转换为散点图和柱状图进行可视化展示。 该爬虫的工作原理是在爬虫界面预设目标网站的相关URL,并根据输入的不同信息对URL进行拼接,以获取相关的地址和信息。然后对获取的信息进行解析,从中提取需要的数据,并将这些数据创建并保存到对应的Excel表格中。接着,使用API从Excel中读取关键信息,并使用API生成可视化图像。 通过使用tkinter和网络爬虫技术,这个基于Python的爬虫可以帮助用户快速获取智联招聘网站上的职业信息,并通过可视化方式进行展示,从而方便用户进行分析和决策。<span class="em">1</span><span class="em">2</span> #### 引用[.reference_title] - *1* [毕业设计:基于Python的网络爬虫及数据处理(智联招聘)](https://download.youkuaiyun.com/download/weixin_54626591/85122394)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [基于Python的网络爬虫开发与实现](https://blog.youkuaiyun.com/sheziqiong/article/details/127546274)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值