問題タブ [urlparse]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - urlparseでの奇妙な動作
Pythonのurlparseで見られる奇妙な動作に対する既知の回避策があるかどうか疑問に思いました。
pythoninterpeterの数行の結果を次に示します。
上記の例では、最初の値「https:// localhost /?code」のキーはなぜですか?ただの「コード」ではないでしょうか?注:parse_qsにも同じ悪い動作があります。
上記の例では、クエリ文字列が常にクエリ値に含まれるとは限らないことに注意してください。プロトコルがまったく重要なのはなぜですか?クエリフィールドは常にクエリ文字列を取得するべきではありませんか?'ftp'または他のよく知られたプロトコルでのテストも不幸なようです。
python - Urlparse と '\n'
私は持っている:
これは正しいです?解析中に「\n」を削除すべきではありませんか? または、この関数を間違って使用しているだけですか、それとも引数/パラメータが不足していますか?
javascript - Pythonのurlparse.parse_qs()に相当するJavascript?
私はpythonを使用して、javascriptによって解析されるクエリ文字列を生成しています。
かなり「複雑な」データを考えてみましょう:
Python では、urlparse.parse_qs()
URL エンコードされたクエリ文字列を取得し、Python 構造を再構築するために使用できます。
Javascriptに相当するものはありますか? そのようなクエリ文字列を解析する方法を知っているライブラリを書いた人はいますか?
ちなみに、この Javascript はブラウザで実行されるのではなく、「Netsuite」と呼ばれるパッケージ内の内部スクリプト機能であるため、外部の JavaScript ライブラリを使用することはやや困難です (ただし、それが必要な場合は最終的に実行可能です)。
python - Pythonurlparse-サブドメインなしでドメイン名を抽出します
Python urlparseを使用して、URLからサブドメインなしでドメイン名を抽出する方法が必要です。
たとえば、のよう"google.com"
な完全なURLから抽出したいと思い"http://www.google.com"
ます。
私が持っていると思われる最も近いものurlparse
はnetloc
属性ですが、これにはサブドメインが含まれています。この例では、これはですwww.google.com
。
www.google.comをgoogle.comに変換するカスタム文字列操作を作成できることは知っていますが、このタスクでは手動による文字列変換や正規表現を避けたいと思います。(この理由は、カスタム解析関数を作成する際に必要なすべてのエッジケースを検討できると確信できるほど、URL形成ルールに精通していないためです。)
または、urlparse
私が必要なことを実行できない場合、誰かが他のPython URL解析ライブラリを知っていますか?
python - http://またはwwwを検索します。ドメインから削除します。domain.comを離れる
私はPythonにまったく慣れていません。ドメイン名だけを残すようにURLのファイルを解析しようとしています。
ログファイルのURLの一部はhttp://で始まり、一部はwwwで始まります。一部は両方で始まります。
これは、http://の部分を取り除く私のコードの一部です。httpとwwwの両方を探すために何を追加する必要がありますか。両方を削除しますか?
現在、コードを実行すると、http://のみが削除されます。コードを次のように変更した場合:
両方で始まるドメインのみが影響を受けます。コードをより条件付きにする必要があります。TIA
編集...これが私の完全なコードです...
元の投稿で正規表現と間違えました。それは確かにurlparseを使用しています。
python - PythonでURLの特定の部分を取得する
私はpythonを使用しており、以下のようにURLの特定の部分を取得しようとしています
結果
ケース 1 :
実際には、私はいくつかのURL(リストまたは他の場所に保存されている)を持っているので、私が望むのは、URLで上記のように見つけて、後と前domain name
の部分を取得する必要があることです。つまり、文字列は後と前で始まりますこれは、現在のシナリオでのみ発生します。www.
.co.in
first dot
second dot
google
したがって、指定された URL が url given iswww.gmail.com
であると仮定すると、その中でのみフェッチする必要gmail
があるため、指定された URL が何であれ、コードは最初のドットで始まり、2 番目のドットの前にある部分をフェッチする必要があります。
ケース 2:
domain.com, stackoverflow.com
また、一部の URL は、このように URLなしで直接指定される場合があります。www
その場合は、 と のみをフェッチする必要がstackoverflow
あり domain
ます。
gmail, stackoverflow, google
最後に、私の意図は、そのようなURLからメインネームを取得することです.....
通常、1 つの URL を使用list slicing
して文字列をフェッチしますが、多数の URL があるため、上記のように必要な部分を動的にフェッチする必要があります
上記の概念を満たす方法を教えてください。
python - 文字列を辞書から URL コード化する
クエリ文字列から特定のアイテムを削除しようとしています。これを行う最善の方法は、クエリ文字列を解析し、繰り返し、不要な特定のキーを削除して、すべてを結合することです。
pythonガイドに従って、彼らが使用すると言っているurlencode関数は、期待どおりに機能しないようです。
次のコードは、単純にクエリ文字列を解析して結合し直します。空の値を保持するように設定しました。
クエリ コードの結果が f 文字列と同じになることを期待しています。
http://docs.python.org/2/library/urlparse.html#urlparse.parse_qs
だから、辞書の各項目で urlencode を呼び出して、q 変数をループして文字列を手動で作成する必要があると思いますか? 何か良い方法はないでしょうか...
Python 2.7 の使用
ありがとう
python - urlparse.urlenparse の動作に一貫性がないのはなぜですか?
netloc が空の場合、urlparse.urlunparse に一貫性がありません:
それはバグですか、それとも機能ですか?スキームが認識されない場合でも、最初の例のように urlunparse が常に動作することを期待します。
python - Python urlparse.parse_qs ユニコード URL
urlparse.parse_qs
URL パラメータの解析に役立ち、 で表される単純な ASCII URL で問題なく動作しstr
ます。したがって、クエリを解析しurllib.urlencode
、解析されたデータを使用して同じパスを構築できます。
URL にパーセントでエンコードされた非 ASCII パラメータが含まれている場合も、正常に動作します。
しかし、djangoを使用する場合、を使用してURLを取得し、request.get_full_path()
パスを文字列として返しますunicode
:
今何が起こるか見てください:
query_dict
バイトを含むユニコード文字列が含まれています! ユニコードポイントではありません!もちろん、その文字列を urlencode しようとすると、UnicodeEncodeError が発生しました。
現在、私は解決策を持っています:
質問は次のとおりです。
- parse_qs が奇妙な文字列 (バイトを含むユニコード) を返すのはなぜですか?
- url を str に変換しても安全ですか?