最近想提取出特定的URL,遇到问题为预期提取出URL中带有webshell或者phpinfo字段的URL,但是全部URL都匹配出来了:
for url in urls: if "webshell" or "phpinfo" in url: print url
改成and语句也不符合预期,只提取出了含有phpinfo的url:
for url in urls: if "webshell" and "phpinfo" in url: print url
学习是最好的投资!
으아악
그렇습니다. 원래 "webshell"을 먼저 판단했는데, 0이 아니면 url의 "phpinfo"와 url의 "phpinfo"를 판단합니다...
은 if "webshell" 또는 if "phpinfo" in url을 의미하며 전자는 항상 참입니다.
if "webshell"
if "phpinfo" in url
이것이 의미하는 것은 if "phpinfo" in url입니다. 왜냐하면 if "webshell"은 항상 참이기 때문입니다.
해결책은 기본적으로 @lock이 말한 대로입니다.
오늘 어울리는 단어가 많다면:
결과:
urlcontain(url, lst) url에 lst 문자열
urlcontain(url, lst)
url
lst
이렇게 하면 10개의 키워드를 비교할 때 if 문을 너무 길게 작성하지 않아도 됩니다.
물론 re을 사용해도 되지만 개인적으로 re는 별로 안 좋아하는데...
re
내가 답변한 질문: Python-QA
으아악
그렇습니다. 원래 "webshell"을 먼저 판단했는데, 0이 아니면 url의 "phpinfo"와 url의 "phpinfo"를 판단합니다...
으아악
은
으아악if "webshell"
또는if "phpinfo" in url
을 의미하며 전자는 항상 참입니다.이것이 의미하는 것은
if "phpinfo" in url
입니다. 왜냐하면if "webshell"
은 항상 참이기 때문입니다.해결책은 기본적으로 @lock이 말한 대로입니다.
으아악오늘 어울리는 단어가 많다면:
으아악결과:
으아악
이 있는지 물어볼 수 있습니다.urlcontain(url, lst)
url
에lst
문자열이렇게 하면 10개의 키워드를 비교할 때 if 문을 너무 길게 작성하지 않아도 됩니다.
물론
re
을 사용해도 되지만 개인적으로re
는 별로 안 좋아하는데...내가 답변한 질문: Python-QA