Ce qui peut être utilisé à la place de la fonction parse_qs
-
09-10-2019 - |
Question
Je le code suivant pour l'analyse syntaxique youtube alimentation et retour youtube id film. Comment puis-je réécris que ce soit python 2.4 compatible que je suppose ne supporte pas la fonction parse_qs
?
YTSearchFeed = feedparser.parse("http://gdata.youtube.com" + path)
videos = []
for yt in YTSearchFeed.entries:
url_data = urlparse.urlparse(yt['link'])
query = urlparse.parse_qs(url_data[4])
id = query["v"][0]
videos.append(id)
La solution
je suppose que l'exécution de votre code existant dans 2.6 ou quelque chose de nouveau, et vous essayez de revenir à 2,4? parse_qs
être utilisé dans le module cgi
avant qu'il ne soit déplacé à urlparse
. Essayez import cgi
, cgi.parse_qs
.
Inspiré par commentaire TryPyPy, je pense que vous pouvez faire fonctionner votre source soit dans l'environnement en faisant:
import urlparse # if we're pre-2.6, this will not include parse_qs
try:
from urlparse import parse_qs
except ImportError: # old version, grab it from cgi
from cgi import parse_qs
urlparse.parse_qs = parse_qs
Mais je n'ai pas 2.4 pour essayer, donc pas de promesses.
Autres conseils
J'ai essayé, et encore .. il ne fonctionnait pas.
Il est plus facile de simplement copier les parse_qs / fonctions QSL plus du module cgi au module urlparse.
Problème résolu.