toap
1.0.0
Toapi vous donne la possibilité de faire en sorte que chaque site Web fournisse des API.
$ pip install toapi
créez app.py
et copiez le code :
from flask import request
from htmlparsing import Attr , Text
from toapi import Api , Item
api = Api ()
@ api . site ( 'https://news.ycombinator.com' )
@ api . list ( '.athing' )
@ api . route ( '/posts?page={page}' , '/news?p={page}' )
@ api . route ( '/posts' , '/news?p=1' )
class Post ( Item ):
url = Attr ( '.storylink' , 'href' )
title = Text ( '.storylink' )
@ api . site ( 'https://news.ycombinator.com' )
@ api . route ( '/posts?page={page}' , '/news?p={page}' )
@ api . route ( '/posts' , '/news?p=1' )
class Page ( Item ):
next_page = Attr ( '.morelink' , 'href' )
def clean_next_page ( self , value ):
return api . convert_string ( '/' + value , '/news?p={page}' , request . host_url . strip ( '/' ) + '/posts?page={page}' )
api . run ( debug = True , host = '0.0.0.0' , port = 5000 )
exécutez python app.py
puis ouvrez votre navigateur et visitez http://127.0.0.1:5000/posts?page=1
vous obtiendrez le résultat du genre :
{
"Page" : {
"next_page" : " http://127.0.0.1:5000/posts?page=2 "
},
"Post" : [
{
"title" : " Mathematicians Crack the Cursed Curve " ,
"url" : " https://www.quantamagazine.org/mathematicians-crack-the-cursed-curve-20171207/ "
},
{
"title" : " Stuffing a Tesla Drivetrain into a 1981 Honda Accord " ,
"url" : " https://jalopnik.com/this-glorious-madman-stuffed-a-p85-tesla-drivetrain-int-1823461909 "
}
]
}
Écrivez du code, testez le code et tirez la demande.