Utilisez urlparse.urljoin au lieu de os.path.join pour les jointures d'URL Python

J'ai obtenu une liste d'URL à partir d'un fichier csv avec Python et j'ai trébuché lorsque je voulais combiner les URL, alors prenez note

Ceux qui n'ont pas travaillé (os.path.join)

import os.path

channel_urls = ['/channel/UCVrJcoR8hUN9Rn7uPI4z6NQ']

for i in channel_urls:
    root_url = 'https://www.youtube.com'
    channel_url = ('%s' % i)
    channel_about_url = urlparse.urljoin(youtube_url, channel_url, 'about')
    print(self.open_channel_url)

# /channel/UCVrJcoR8hUN9Rn7uPI4z6NQ/about           // 「https://www.youtube."com" n'entre pas

Ceux qui ont réussi (urlparse.urljoin)

Installez d'abord le module (Les commandes suivantes sont extraites de la sortie de $ histroy, donc toutes ne sont pas nécessaires)

tamenal.


$ pip3 install urllib3
$ pip install git+https://github.com/mitsuhiko/flask-oauth
$ pip install urlparse3

La source

sample.py


try:
    import urlparse
except ImportError:
    import urllib.parse as urlparse

channel_urls = ['/channel/UCVrJcoR8hUN9Rn7uPI4z6NQ']

for i in channel_urls:
    root_url = 'https://www.youtube.com'
    channel_url = ('%s' % i)
    channel_about_url = urlparse.urljoin(youtube_url, channel_url, 'about')
    print(self.open_channel_url)
# https://www.youtube.com/channel/UCVrJcoR8hUN9Rn7uPI4z6NQ/about

référence https://qiita.com/Go-zen-chu/items/d7e6b9af0bd90c7aabca https://www.it-swarm.dev/ja/python/python%E3%83%A2%E3%82%B8%E3%83%A5%E3%83%BC%E3%83%ABurlparse%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%A7%E3%81%8D%E3%81%BE%E3%81%9B%E3%82%93/961197002/ https://github.com/heroku/kafka-helper/issues/6

Recommended Posts

Utilisez urlparse.urljoin au lieu de os.path.join pour les jointures d'URL Python
Utilisons usercustomize.py au lieu de sitecustomize.py
Envelopper (partie de) la bibliothèque AtCoder en Cython pour une utilisation en Python
Utilisons tomotopy au lieu de gensim
Comment utiliser correctement le package de visualisation Python
Ensuite, utilisez Python (Flask) pour Heroku!
Enquête pour l'utilisation pratique de BlockChain
Web scraping pour les débutants en Python (1)
Premiers pas avec python3
Web scraping pour les débutants en Python (4) -1
Enregistrement de l'introduction de Python pour les nouveaux arrivants
[Python of Hikari-] Chapitre 05-09 Syntaxe de contrôle (utilisation correcte des instructions for et while)
À propos du code Python pour une moyenne mobile simple en supposant l'utilisation de Numba
Élément de mémoire Python efficace 7 Utilisez la notation d'inclusion de liste au lieu de la carte et du filtre
Utilisez edump au lieu de var_dump pour un débogage facile et une compréhension efficace du contenu des données (PHP)
Pourquoi vous devriez utiliser urlopen au lieu d'urlretrieve pour télécharger des fichiers Python
[Python] Résumé de l'utilisation des pandas
[Python] Compte-rendu de la réunion d'étude pour les débutants (7/15)
Utiliser DeepL avec python (pour la traduction d'articles)
Résumé de diverses instructions for en Python
comparaison de chaînes python / utiliser 'list' et 'in' au lieu de '==' et 'ou'
[Python] Organisation de l'utilisation des instructions
[Python2.7] Résumé de l'utilisation d'unittest
R: Utilisez le japonais au lieu du japonais dans le script
Pandas du débutant, par le débutant, pour le débutant [Python]
Résumé des techniques utiles de Scrapy en Python
Comment utiliser "deque" pour les données Python
Résumé de l'utilisation de la liste Python
Utilisez pathlib dans Maya (Python2.7) en préparation du prochain Python3.7
[Python2.7] Résumé de l'utilisation du sous-processus
[Question] Comment utiliser plot_surface de python
[Python] Avertissement utilisateur: la prise en charge de Selenium pour PhantomJS est obsolète, veuillez utiliser à la place des versions sans tête de Chrome ou Firefox
L'histoire selon laquelle le coût d'apprentissage de Python est faible
[Python] Comment utiliser deux types de type ()
Utilisez Logger avec Python pour le moment
Utiliser plusieurs versions de l'environnement python avec pyenv
Envelopper C avec Cython pour une utilisation à partir de Python
Utilisez OpenSeesPy quel que soit le système d'exploitation ou la version de Python
Résumé de l'utilisation de MNIST avec Python
Traitement d'image? L'histoire du démarrage de Python pour
Compréhension facile de Python pour les tableaux et (pour les super débutants)
environnement de développement python -utilisation de pyenv et virtualenv-
N'utilisez pas readlines () dans votre instruction Python for!
Résumé des tableaux Python fréquemment utilisés (pour moi-même)
Code pour vérifier le fonctionnement de Python Matplot lib
Résumé de l'étude de Python pour utiliser AWS Lambda
Utilisons différentes versions de SQLite3 de Python3!
Envelopper C ++ avec Cython pour une utilisation à partir de Python
[Hikari-Python] Chapitre 09-01 Classes (Bases des objets)
python: utilisez votre propre classe pour numpy ndarray
Histoire de base de l'héritage en Python (pour les débutants)
Quoi utiliser pour les piles et les files d'attente Python (comparaison de vitesse de chaque structure de données)