用Python,定制请求头,并使用get请求获取菜鸟教程 Mysql教程 的网页内容,以及使用post请求获取百度翻译的网页内容
时间: 2024-12-21 22:26:43 浏览: 4
在Python中,我们可以使用requests库来发送HTTP请求并定制请求头。这里我会分别演示如何使用GET和POST请求获取指定网站的内容。
首先,我们需要安装requests库,如果你还没有安装,可以使用`pip install requests`命令安装。
**GET请求获取菜鸟教程 MySQL教程页面**:
```python
import requests
url = "https://www.runoob.com/mysql/mysql-tutorial.html" # 菜鸟教程MySQL教程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_get = requests.get(url, headers=headers)
if response_get.status_code == 200:
page_content_get = response_get.text
print("GET请求成功,页面内容:", page_content_get[:200]) # 打印前200字符的内容
else:
print("GET请求失败,状态码:", response_get.status_code)
相关问题
使用flask 写一个例子:接收post请求,将请求参数存到mysql数据库
好的,这是一个简单的Flask例子可以满足您的需求:
```python
from flask import Flask, request, jsonify
from flask_sqlalchemy import SQLAlchemy
app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql://username:password@localhost/mydatabase'
db = SQLAlchemy(app)
class User(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(80), unique=True, nullable=False)
email = db.Column(db.String(120), unique=True, nullable=False)
def __repr__(self):
return '<User %r>' % self.name
@app.route('/users', methods=['POST'])
def create_user():
name = request.json.get('name')
email = request.json.get('email')
new_user = User(name=name, email=email)
db.session.add(new_user)
db.session.commit()
return jsonify({'message': 'User created successfully!'})
if __name__ == '__main__':
app.run(debug=True)
```
您可以使用以下命令运行此应用程序:`python app.py`。在浏览器中访问`http://localhost:5000/users`,然后使用POSTman等工具测试此API,将数据提交到此API以将请求参数存储到MySQL数据库中。
前端通过点击地图的省份,或者查询省份,可以显示该省份野生动物的名称列表,前端发送请求,后端使用python访问MySQL数据库,前端使用pyechars展示出地图代码怎么写
首先,你需要在后端编写一个API接口,用于接收前端发送的省份信息或者查询信息,并从MySQL数据库中查询对应的野生动物名称列表,最后将查询结果返回给前端。这个API接口可以使用Python Flask框架来编写。
以下是一个简单的Flask API示例,用于接收前端发送的省份信息并返回野生动物名称列表:
```python
from flask import Flask, request, jsonify
import pymysql
app = Flask(__name__)
# MySQL数据库连接配置
db_config = {
'host': 'localhost',
'user': 'username',
'password': 'password',
'database': 'database_name'
}
# 处理省份信息查询API请求
@app.route('/api/province', methods=['POST'])
def province():
# 获取前端发送的省份信息
province = request.form.get('province')
# 连接MySQL数据库
conn = pymysql.connect(**db_config)
cursor = conn.cursor()
# 查询对应的野生动物名称列表
cursor.execute("SELECT animal_name FROM animal WHERE province=%s", province)
result = cursor.fetchall()
# 关闭数据库连接
cursor.close()
conn.close()
# 返回查询结果
return jsonify(result)
if __name__ == '__main__':
app.run()
```
在前端,你可以使用JavaScript来发送请求并处理响应数据,使用pyecharts来展示地图和野生动物名称列表。
以下是一个简单的前端页面示例,用于展示中国地图和省份野生动物名称列表:
```html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>中国野生动物分布地图</title>
<!-- 引入pyecharts和jQuery库 -->
<script src="https://cdn.jsdelivr.net/npm/echarts@5.1.0/dist/echarts.min.js"></script>
<script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
</head>
<body>
<!-- 显示地图的容器 -->
<div id="map" style="width: 800px; height: 600px;"></div>
<!-- 显示省份野生动物名称列表的容器 -->
<div id="animal-list"></div>
<script>
// 初始化地图
var myChart = echarts.init(document.getElementById('map'));
myChart.setOption({
series: [{
type: 'map',
map: 'china'
}]
});
// 点击地图省份时,发送API请求并展示野生动物名称列表
myChart.on('click', function(params) {
$.post('/api/province', {province: params.name}, function(result) {
var animalList = '';
if (result.length > 0) {
animalList = '<ul>';
for (var i = 0; i < result.length; i++) {
animalList += '<li>' + result[i][0] + '</li>';
}
animalList += '</ul>';
}
$('#animal-list').html(animalList);
});
});
</script>
</body>
</html>
```
这个示例中,当你点击中国地图上的某个省份时,会发送一个POST请求到后端的`/api/province`接口,并将点击的省份信息作为请求参数发送。后端会从MySQL数据库中查询对应的野生动物名称列表,并将结果返回给前端。前端使用jQuery库来发送请求,并使用pyecharts库来展示地图和野生动物名称列表。
阅读全文