URL에서 표시 할 쿼리 이름과 값을 가져 오려고합니다. 예를 들어. url='http://host:port_num/file/path/file1.html?query1=value1&query2=value2'
이 쿼리 이름과 해당 값을 구문 분석하고이를 인쇄합니다.python에서 regex로 URL을 구문 분석합니다.
답변
가 나는 urlparse
를 사용하는 regex
더 나은를 사용하지 않는 것이 좋습니다 그러나 여기 내 regex
동의합니다. urlparse
과 같은 클래스는 모든 URL을 효율적으로 처리하기 위해 특별히 개발되었으며 regex
보다 신뢰할 수 있습니다. 가능한 경우 사용하십시오.
>>> x = 'http://www.example.com:8080/abcd/dir/file1.html?query1=value1&query2=value2'
>>> query_pattern='(query\d+)=(\w+)'
>>> # query_pattern='(\w+)=(\w+)' a more general pattern
>>> re.findall(query_pattern,x)
[('query1', 'value1'), ('query2', 'value2')]
정규식이이 못에 대한 잘못된 망치 인 이유에 대해 자세히 설명해주는 것이 좋습니다. –
좋아, 내가 아주 간단히 설명했다고 생각해. 원하는 경우 더 자세히 설명해주십시오. D – jamylak
jamylak. 감사합니다. 당신이 전화를 plase 수있는 방법 v 일반적으로 분할 할 수 있습니다. 예를 들면. 쿼리에 "name = asd & name1 = qwerty"가 포함되어 있으면 위의 패턴은 작동하지 않습니다. 그래서 대신에 와트 v를 쿼리 패턴으로 사용할 수 있습니다. 이후 파이썬 정규식에 나는이 질문을 해요 : – Myjab
정규식을 사용하지 마십시오. urlparse을 사용하십시오.
>>> import urlparse
>>> urlparse.parse_qs(urlparse.urlparse(url).query)
{'query2': ['value2'], 'query1': ['value1']}
- 1. RegEx로 ID3 태그를 구문 분석합니다.
- 2. android는 웹보기에서 URL을 구문 분석합니다.
- 3. VB.NET RegEx로 텍스트 파일의 유효한 경로를 구문 분석합니다.
- 4. 콘텐츠에서 URL을 반환하도록 텍스트 영역을 구문 분석합니다.
- 5. php get url을 여러 변수로 구문 분석합니다.
- 6. Regex로 HTML 구문 분석 대체
- 7. 사용자 에이전트가 Regex로 구문 분석
- 8. REGEX로 소스 구문 분석
- 9. Python에서 stdout 구문 분석
- 10. XML을 올바르게 구문 분석합니다.
- 11. INI 파일을 구문 분석합니다.
- 12. 파이프를 간결하게 구문 분석합니다.
- 13. Tumblr의 JSONObject를 구문 분석합니다.
- 14. XPath 표현식을 구문 분석합니다.
- 15. ASP.NET 사이트를 구문 분석합니다.
- 16. 패턴에서 요소를 구문 분석합니다.
- 17. 문자열에서 문자열을 구문 분석합니다.
- 18. Java.util.Date의 org.mozilla.javascript.NativeDate를 구문 분석합니다.
- 19. jquery를 사용하여 암호로 보호 된 json URL을 구문 분석합니다.
- 20. asp.net regex로 앵커 태그를 찾아 URL을 바꿉니다.
- 21. Regex로 Hpricot을 검색
- 22. iphone에서 .ics 파일을 구문 분석합니다.
- 23. 배열로 jps 출력을 구문 분석합니다.
- 24. 정규식은 IRC 메시지를 구문 분석합니다
- 25. CIM_DateTime을 .Net DateTime으로 구문 분석합니다.
- 26. 자바 스크립트 배열을 구문 분석합니다
- 27. PHP에서 JSON 배열을 구문 분석합니다.
- 28. 최상위 레이블이없는 JSON을 구문 분석합니다.
- 29. CK 편집기의 내용을 구문 분석합니다.
- 30. jFugue가 템포를 잘못 구문 분석합니다.
귀하가 시도한 것을 보여주십시오. – claesv