您好,登錄后才能下訂單哦!
Web 想必我們都不陌生,我們現在日常訪問的網站都是 Web 服務程序搭建而成的,Python 同樣不例外也有一些這樣的 Web 服務程序,比如 Flask、Django 等,我們可以拿它來開發網站,開發接口等等。
在本書中,我們主要要用到這些 Web 服務程序來搭建一些 API 接口,供我們的爬蟲使用。例如,維護一個代理池,代理保存在 Redis 數據庫中,我們要將代理池作為一個公共的組件使用,那么如何構建一個方便的平臺來供我們取用這些代理呢?最合適不過的就是通過 Web 服務提供一個 API 接口,我們只需要請求接口即可獲取新的代理,簡單、高效、實用。
在本書中用到的一些 Web 服務程序主要有 Flask、Tornado。
本節來分別介紹它們的安裝方法。
Flask 是一個輕量級的 Web 服務程序,簡單、易用、靈活,在本書中我們主要用它來做一些 API 服務,本節我們來了解下它的安裝方式。
pip3?install?flask
運行完畢之后就可以完成安裝。
安裝成功之后可以運行如下實例代碼測試一下:
from flask import Flask
app = Flask(__name__)
@app.route("/")
def hello():
??? return "Hello World!"
if __name__ == "__main__":
??? app.run()
Python資源分享qun 784758214 ,內有安裝包,PDF,學習視頻,這里是Python學習者的聚集地,零基礎,進階,都歡迎
直接運行代碼,可以發現系統會在 5000 端口開啟 Web 服務,控制臺輸出如下:
* Running on?http://127.0.0.1:5000/ (Press CTRL+C to quit)
直接訪問:http://127.0.0.1:5000/,可以觀察到網頁中呈現了 Hello World!,如圖 1-41 所示:
[圖片上傳失敗...(image-e4fea-1563957930486)]
圖 1-41 運行結果
這樣一個最簡單的 Flask 程序就運行成功了。
在后文我們會利用 Flask+Redis 維護動態代理池和 Cookies 池。
Tornado 是一個支持異步的Web框架,通過使用非阻塞 I/O 流,它可以支撐成千上萬的開放連接,效率非常高,本節我們介紹一下它的安裝方式。
*GitHub:https://github.com/tornadoweb...
PyPi:https://pypi.python.org/pypi/...
官方文檔:http://www.tornadoweb.org
pip3?install?tornado
執行完畢之后即可完成安裝。
同樣在這里我們也可以用一個 Hello World 程序測試一下,代碼如下:
import tornado.ioloop
import tornado.web
class MainHandler(tornado.web.RequestHandler):
??? def get(self):
??????? self.write("Hello, world")
def make_app():
??? return tornado.web.Application([
??????? (r"/", MainHandler),
??? ])
if __name__ == "__main__":
??? app = make_app()
??? app.listen(8888)
??? tornado.ioloop.IOLoop.current().start()
Python資源分享qun 784758214 ,內有安裝包,PDF,學習視頻,這里是Python學習者的聚集地,零基礎,進階,都歡迎
直接運行程序,可以發現系統在 8888 端口運行了 Web 服務,控制臺沒有輸出內容,此時訪問:http://127.0.0.1:8888/,可以觀察到網頁中呈現了 Hello, world,如圖 1-42 所示:
圖 1-42 運行結果
出現上述情景就說明 Tornado 成功安裝了。
在后文我們會利用 Tornado+Redis 來搭建一個 ADSL 撥號代理池。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。