在进行在线Python爬虫时,跨域请求是一个常见的问题。为了解决这个问题,你可以使用以下方法:
flask-cors
库来轻松添加CORS支持。首先安装库:pip install flask-cors
然后在你的Flask应用中添加以下代码:
from flask import Flask
from flask_cors import CORS
app = Flask(__name__)
CORS(app)
这将允许所有域名进行跨域请求。如果你想限制允许的域名,可以将CORS(app)
替换为以下代码:
CORS(app, resources={r"/api/*": {"origins": "http://example.com"}})
requests
和http.client
。这里是一个使用requests
库的示例:import requests
proxies = {
'http': 'http://proxy.example.com:8080',
'https': 'http://proxy.example.com:8080',
}
response = requests.get('http://target-domain.com/api/data', proxies=proxies)
请注意,这种方法可能会导致一定的性能损失,因为请求需要通过代理服务器。
总之,根据你的需求和项目规模,可以选择合适的方法来解决跨域请求问题。在大多数情况下,使用CORS或代理服务器是可行的解决方案。