首页 > 编程语言 >Python实现数据采集

Python实现数据采集

时间:2023-09-18 18:35:58浏览次数:51  
标签:E5% headers Python data 22% 3A% 采集 2C% 数据

前提是配置好hadoop的相关环境

1、分析网页,确定采集的数据

我们需要获取到该网页的如下几个信息:

请求信息: url——网站页面地址

设置这个请求的请求头: headers——(user-agent/referer/origin/cookie)

设置这个请求的传递数据: data——(first/pn/kd)------>解决编码

如下图所示:

先安装python需要的相关的包:

url:
https://www.lagou.com/wn/jobs

headers:

这里的数据使用快捷键Ctrl+Shift+i进入到web界面的检查页面,然后Ctrl+R刷新网络模块:

然后,信息就都在这里出现啦:

headers数据:

data:

提取数据:

具体代码:

import requests
import time

url='https://www.lagou.com/wn/jobs'

headers={
    "user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/117.0.0.0 Safari/537.36 Edg/117.0.2045.31",
    "referer":"https://www.lagou.com/wn/jobs?kd=Java&city=%E5%8C%97%E4%BA%AC&pn=1",
    "origin":"https://www.lagou.com/",
    "cookie":"JSESSIONID=ABAAABAABAGABFAAEA69FC8E6CD8BB9279BD998C897601D; WEBTJ-ID=20230918164455-18aa776cf0f95c-068f79df6bc8cf-78505774-1327104-18aa776cf102dd; RECOMMEND_TIP=true; privacyPolicyPopup=false; Hm_lvt_4233e74dff0ae5bd0a3d81c6ccf756e6=1695026697; user_trace_token=20230918164457-cfb25219-7bd9-4f7d-9dc5-bc171648a693; LGSID=20230918164457-4880bcac-8e67-486b-8bb3-6aee05cc4147; LGUID=20230918164457-ed1f5207-a2ee-421f-922a-d4fc89bf7739; _ga=GA1.2.1911198389.1695026697; _gid=GA1.2.302334427.1695026697; sajssdk_2015_cross_new_user=1; sensorsdata2015session=%7B%7D; index_location_city=%E5%85%A8%E5%9B%BD; gate_login_token=v1####245d299e0d1ed714bf5e0c9709c8fab2553f894311014f16e954f5fdb12a0e64; LG_HAS_LOGIN=1; _putrc=81B878065C7103C6123F89F2B170EADC; login=true; hasDeliver=0; unick=%E5%88%98%E7%B4%AB%E9%94%A6; __SAFETY_CLOSE_TIME__26494154=1; TG-TRACK-CODE=index_navigation; __lg_stoken__=16e86fbfab228abce480d7c20e2a438c1a95f406ed5488e30fe83a2948fe63626ea8863aa1c6cec421d046c81340519584424cfd74494e3b9b45bd06928ed96691bf89e7027a; X_HTTP_TOKEN=5d8ce7eae99bedb73309205961ac07a8fe736a0c27; LGRID=20230918172353-055032eb-1cb1-48cc-a0d5-12a9700fcf93; Hm_lpvt_4233e74dff0ae5bd0a3d81c6ccf756e6=1695029038; _ga_DDLTLJDLHH=GS1.2.1695026697.1.1.1695029038.60.0.0; sensorsdata2015jssdkcross=%7B%22distinct_id%22%3A%2226494154%22%2C%22first_id%22%3A%2218aa776d37b331-02514a8c212ba9-78505774-1327104-18aa776d37c19af%22%2C%22props%22%3A%7B%22%24latest_traffic_source_type%22%3A%22%E7%9B%B4%E6%8E%A5%E6%B5%81%E9%87%8F%22%2C%22%24latest_search_keyword%22%3A%22%E6%9C%AA%E5%8F%96%E5%88%B0%E5%80%BC_%E7%9B%B4%E6%8E%A5%E6%89%93%E5%BC%80%22%2C%22%24latest_referrer%22%3A%22%22%2C%22%24os%22%3A%22Windows%22%2C%22%24browser%22%3A%22Chrome%22%2C%22%24browser_version%22%3A%22117.0.0.0%22%7D%2C%22%24device_id%22%3A%2218aa776d37b331-02514a8c212ba9-78505774-1327104-18aa776d37c19af%22%7D"
}

data={
    'first':'true',
    'pn':'1',
    'kd':'Java'
}


for i in range(25,31):
    data['pn']=i
    resp=requests.post(url,headers=headers,data=data)
    result=resp.text
    with open(f"lagou-{i}.json",mode='w',encoding='utf-8') as f:
        f.write(result)
        print(result)
    time.sleep(5)

存放数据的文件:

标签:E5%,headers,Python,data,22%,3A%,采集,2C%,数据
From: https://www.cnblogs.com/liuzijin/p/17712372.html

相关文章

  • 人人都能学的数据分析体系课(16周完整版+源码+PDF课件)
    点击下载——人人都能学的数据分析体系课(16周完整版+源码+PDF课件)  提取码:nsep 人人都能学的数据分析体系课(16周完整版+源码+PDF课件),数据也称为观测值,是实验、测量、观察、调查等的结果。数据分析中所处理的数据分为定性数据和定量数据。只能归入某一类而不能用数值进行测度的数......
  • openGauss学习笔记-73 openGauss 数据库管理-创建和管理索引
    openGauss学习笔记-73openGauss数据库管理-创建和管理索引73.1背景信息索引可以提高数据的访问速度,但同时也增加了插入、更新和删除操作的处理时间。所以是否要为表增加索引,索引建立在哪些字段上,是创建索引前必须要考虑的问题。需要分析应用程序的业务处理、数据使用、经常被......
  • Python 之 爬虫实战 -- 爬某音乐歌曲及评论信息
    使用Selenium爬某音乐歌曲及评论信息啦~Selenium简单介绍1)简介Selenium是一个用于测试网站的自动化测试工具,支持各种主流界面浏览器。简而言之,Selenium是一个用来做网站自动化测试的库,它的定位是做自动化测试的。我们也可以利用它来做爬虫,获取一些网页信息,并且这种爬虫是模......
  • Python 之 爬虫实战 -- 免费音乐下载器
    【Tkinter界面化小程序】用Python做一款免费音乐下载器、无广告无弹窗、清爽超流畅哦~思路进入某音乐主页输入任意歌手,比如李XX为列。音乐从哪里来?---网站的服务器里怎么从网址里得到音乐?---向网站发起网络请求最后用tkinter做成一个界面下载框即可环境本文用到的环境如下:P......
  • Python 之 手机号码短信轰炸
    手机号码短信轰炸可以一直不停的轰炸短息,每5分钟一条短息,无其他限制,如果你想要轰炸xxxxxxxx手机号,只需要把下面源码中的phone=18888888888改成你想要轰炸的手机号即可哦~效果就留给大家自己体验啦源码importrequests,timeforiinrange(1000):header={'Host':'bu......
  • Python 之 漫天樱花表白小程序
    漫天樱花表白小程序:“樱花将灿,冬尽风暖“一樱花和你我都想念~(内含多份源码)......
  • Python 之 专为程序员设计的《极限车神》小游戏
    通过这款专为程序员设计的《极限车神》小游戏,你的打字速度可以赢过专业录入员,这个秘密99%的人都不知道哦~(爆赞)正文关键词:休闲、赛车、竞技、竞速、操作、打字、闯关、限时。氪金指数:0氪金。推荐星数:4星❤(满星5星)难度星数:5星❤(满星5星)环境准备Python3、Pycharm社区版,第三方......
  • Python 之 "红包来了,红包来了"微信抢红包提示
    "红包来了,红包来了"用了抢红包神器之后,我再也没有漏过一个红包拉~(功能逆天,春节必备)'''Function: 微信红包提示'''importitchatimportpygame'''提示'''defalarm(): pygame.mixer.init() pygame.mixer.music.load('alarm.mp......
  • 一文告诉你为什么时序场景下 TDengine 数据订阅比 Kafka 好
    在TDengine3.0中,我们对流式计算、数据订阅功能都进行了再升级,帮助用户极大简化了数据架构的复杂程度,降低整体运维成本。TDengine提供的类似消息队列产品的数据订阅、消费接口,本质上是为了帮助应用实时获取写入TDengine的数据,或者以事件到达顺序处理数据,与其他消息队列相比,它......
  • oracle11g_获取所有对象&&表数据脚本(迁移后数据比对)
    oracle11g进行数据库迁移后,数据比对靠人工的话比较麻烦,通过如下脚本可以直接取数,获取对象及数据结果文件后,通过notpad++即可进行对比脚本内容如下--------------------------------------------------------------------------------------------------------------------------......