用python写一个接口爬虫代码
时间: 2024-05-06 09:16:40 浏览: 11
好的,以下是一个简单的接口爬虫代码示例:
```python
import requests
# 设置请求参数
params = {
'key': 'your_key',
'page': 1,
'count': 10
}
# 发送 GET 请求
response = requests.get('http://your_api_url.com', params=params)
# 处理响应数据
if response.status_code == 200:
data = response.json()
# TODO: 处理数据
else:
print('请求失败,状态码为:', response.status_code)
```
以上代码中,我们使用了 Python 中的 requests 库来发送 GET 请求,并通过设置请求参数来获取指定数量的数据。在处理响应数据时,我们判断了响应状态码是否为 200,如果是则将响应数据解析为 JSON 格式并进行进一步处理,否则输出请求失败信息。当然,具体的处理方式需要根据实际情况进行调整。
相关问题
用PYTHON写一个所有视频网站的爬虫代码
在这里提供一个基于Python的爬虫脚本,可以用于爬取所有视频网站的视频信息:
```python
import requests
from bs4 import BeautifulSoup
# 定义函数获取视频列表
def get_video_list(url):
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'}
response = requests.get(url, headers=headers)
soup = BeautifulSoup(response.content, 'html.parser')
videos = soup.find_all('a', {'class': 'video'})
video_list = []
for video in videos:
video_title = video.find('span', {'class': 'title'}).text
video_url = video['href']
video_list.append({'title': video_title, 'url': video_url})
return video_list
# 定义函数获取视频详情
def get_video_detail(url):
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'}
response = requests.get(url, headers=headers)
soup = BeautifulSoup(response.content, 'html.parser')
video_title = soup.find('h1', {'class': 'title'}).text
video_desc = soup.find('div', {'class': 'desc'}).text.strip()
video_info = {'title': video_title, 'desc': video_desc}
return video_info
# 测试代码
if __name__ == '__main__':
url = 'https://www.example.com/videos/'
video_list = get_video_list(url)
for video in video_list:
video_detail = get_video_detail(video['url'])
print('标题:', video_detail['title'])
print('简介:', video_detail['desc'])
```
需要注意的是,不同的视频网站可能有不同的网页结构和接口,所以需要根据具体情况进行修改。同时,爬取视频网站的内容需要遵循网站的相关规定和法律法规,不得进行侵犯他人权益的行为。
写一段python爬虫抢票的代码
抢票的代码需要先确认需要爬取哪个网站的哪个页面,以及需要获取哪些信息,这里我们以12306网站的车票查询为例:
```python
import requests
import json
# 设置请求头
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'}
# 车站代码
from_station = 'BJP'
to_station = 'SHH'
# 出发时间
time = '2022-02-01'
# 车票查询接口
url = 'https://kyfw.12306.cn/otn/leftTicket/query?leftTicketDTO.train_date=' + time + '&leftTicketDTO.from_station=' + from_station + '&leftTicketDTO.to_station=' + to_station + '&purpose_codes=ADULT'
# 发送请求,获取响应
response = requests.get(url, headers=headers)
result = json.loads(response.text)
# 获取车次信息
for item in result['data']['result']:
train_list = item.split('|')
train_num = train_list[3] # 车次编号
start_station = train_list[6] # 出发站
end_station = train_list[7] # 到达站
start_time = train_list[8] # 出发时间
end_time = train_list[9] # 到达时间
duration = train_list[10] # 历时
first_seat = train_list[31] or '--' # 一等座
second_seat = train_list[30] or '--' # 二等座
print(train_num, start_station, end_station, start_time, end_time, duration, first_seat, second_seat)
```
以上代码可以查询指定日期、出发站和到达站的火车票信息,并输出到控制台,方便用户查看。
当然,如果需要抢票,需要在获取到车票信息后,再进行下一步操作,如模拟登录、提交订单等,这里就不再赘述。