File tree Expand file tree Collapse file tree 2 files changed +36
-0
lines changed
Expand file tree Collapse file tree 2 files changed +36
-0
lines changed Original file line number Diff line number Diff line change 1+ # community
Original file line number Diff line number Diff line change 1+ from user_scanner .core .orchestrator import generic_validate
2+ from user_scanner .core .result import Result
3+
4+ def validate_stackoverflow (user : str ) -> Result :
5+ url = f"https://stackoverflow.com/users/filter?search={ user } "
6+
7+ def process (response ):
8+ if response .status_code == 200 :
9+ text = response .text
10+
11+ if "No users matched your search." in text :
12+ return Result .available ()
13+
14+ pattern = f'>{ user } <'
15+ if pattern in text :
16+ return Result .taken ()
17+
18+ return Result .available ()
19+
20+ return Result .error ("Unexpected status code from Stack Overflow" )
21+
22+ return generic_validate (url , process )
23+
24+
25+ if __name__ == "__main__" :
26+ user = input ("Username?: " ).strip ()
27+ result = validate_stackoverflow (user )
28+
29+ if result == Result .available ():
30+ print ("Available!" )
31+ elif result == Result .taken ():
32+ print ("Unavailable!" )
33+ else :
34+ msg = result .get_reason ()
35+ print ("Error occurred!" + msg )
You can’t perform that action at this time.
0 commit comments