Advertisement
Malic

linkedin

Sep 4th, 2019
426
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 3.98 KB | None | 0 0
  1. import json
  2. import requests
  3. from bs4 import BeautifulSoup
  4.  
  5. def headers_parser(headers_string):
  6.     headers_split=headers_string.split('\n')
  7.     headers={}
  8.     for header in headers_split:
  9.         headers[header.split(': ')[0]]=header.split(': ')[1]
  10.     return headers
  11.  
  12.  
  13.  
  14.  
  15. headers='''{Host: www.linkedin.com
  16. User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:69.0) Gecko/20100101 Firefox/69.0
  17. Accept: application/vnd.linkedin.normalized+json+2.1
  18. Accept-Language: en-US,en;q=0.5
  19. Accept-Encoding: gzip, deflate, br
  20. x-li-lang: en_US
  21. x-li-track: {"clientVersion":"1.5.*","osName":"web","timezoneOffset":3,"deviceFormFactor":"DESKTOP","mpName":"voyager-web"}
  22. x-li-page-instance: urn:li:page:d_flagship3_feed;QvIXYyWLT9m5a6e6/g2Vfw==
  23. csrf-token: ajax:5881875554683623155
  24. x-restli-protocol-version: 2.0.0
  25. Connection: keep-alive
  26. Referer: https://www.linkedin.com/feed/
  27. Cookie: bcookie="v=2&2792f1f4-894d-4ee1-825c-933e88f2f349"; bscookie="v=1&20190826104741d1cbea64-ac9f-417a-8dad-41f931b6b14dAQFA7v1fVQy1qgM4bwA0gPCMjscpTL1b"; _ga=GA1.2.1056146498.1566816461; AMCV_14215E3D5995C57C0A495C55%40AdobeOrg=-1303530583%7CMCIDTS%7C18143%7CMCMID%7C70401722693306760231315295735047971860%7CMCAAMLH-1568108099%7C6%7CMCAAMB-1568108099%7C6G1ynYcLPuiQxYZrsz_pkqfLG9yMXBpb2zX5dvJdYQJzPXImdj0y%7CMCOPTOUT-1567510499s%7CNONE%7CvVersion%7C3.3.0%7CMCCIDH%7C696003597; JSESSIONID="ajax:5881875554683623155"; lissc1=1; lissc2=1; _lipt=CwEAAAFs86HCEjDWaFkrpcqeJD8kErD7J10HubiHTWAPUQzY3I9F3og0p79UV4--IeQWDrZUCG3fKi-VhwKYrPdWd-hWvPWvBlxEUGOu0_-0Gu8C1KHDV-rXSEMYjANbFnGx0nEYjP-MR2Zjh9v6TtPodqpL8MJWArtq5gsbg3aPwik; UserMatchHistory=AQIax01eb2PNxgAAAWz2emFhM3Yg0sdYFi0aKhxSP5jEh69bXT7ovBSEI9sj3vKrJ6D_MLRSW_zLTspnw6b_5aqUXYm2jVnxEeM0BjqVs7Ewmwn415jt3mpLfCG04SZ0i1i1xEL-dxmaEaDHy_1-a_VApv6Ij17Ag36LvB9oTg; aam_uuid=70246570412380188121337553404828587999; li_sugr=e3060b2e-9da4-431a-a4ee-9885529772e0; li_oatml=AQEwlNUcajMt7QAAAWzh4RD_3JtybHdi2LIP6a6Eyo3DNZ9whDzp2e9YM0as4fYfa7-L4JA3Tp0FVs5wkrh8BmVwy3X6NAKY; visit=v=1&M; lidc="b=TB96:g=1750:u=17:i=1567503310:t=1567544628:s=AQEJkwUhddeIR-usztMbydMPPJ7d_1CN"; bspNotice=1%7CMozilla%2F5.0%20(Android%202.2%3B%20Windows%3B%20U%3B%20Windows%20NT%206.1%3B%20en-US)%20AppleWebKit%2F533.19.4%20(KHTML%2C%20like%20Gecko)%20Version%2F5.0.3%20Safari%2F533.19.4; liap=true; sl=v=1&7wbJj; li_at=AQEDARszUPgEcctMAAABbPQCE5gAAAFtGA6XmFYAT8BPI0Hwcn7QDVNPnGenHORo9dLYOi6jqj1ErHbut1QfmOG0yeAg4v_jTtphjDKrVOgxlaR9MS33eEllqOOeZKG52W3zw5_6gcsaTwotLuDOHBuC; lang=v=2&lang=en-us; _gat=1; AMCVS_14215E3D5995C57C0A495C55%40AdobeOrg=1
  28. TE: Trailers}'''
  29.  
  30.  
  31.  
  32. domain=input("please enter you domain ")
  33. params={'keywords':domain,'origin':'GLOBAL_SEARCH_HEADER','q':'blended'}
  34. url="https://www.linkedin.com/voyager/api/typeahead/hitsV2?"
  35. reqDomain=requests.get(url,params=params,headers=headers_parser(headers))#request url +headr and params
  36. #print(reqDomain)
  37. #print(type(reqDomain))#class
  38. textDomain=json.loads(reqDomain.text)#loaded the json file
  39. #print(textDomain)#now its dic
  40. option=textDomain["data"]["elements"]#now its dic so i want get into this
  41. #print(option)
  42. cnt=0
  43. urns=[]
  44. for x in option:
  45.     if x['type']=='COMPANY':#the line of json with the tag of type
  46.         print(x['text']['text'])
  47.         z=x['targetUrn']
  48.         z=z.split(":")
  49.         z1=z[3]
  50.         urns.append(z1)
  51. print(urns)
  52.  
  53. choose1=int(input("pls enter your choose by order from 0"))
  54. choose2=urns[choose1]
  55.  #print(choose2)
  56.  
  57.  
  58. webCount=20
  59. req2=requests.get(f"https://www.linkedin.com/voyager/api/search/blended?count={webCount}&filters=List(currentCompany-%3E{choose2},resultType-%3EPEOPLE)&origin=OTHER&q=all&queryContext=List(spellCorrectionEnabled-%3Etrue)&start=0",headers=headers_parser(headers))
  60. #print(req2.text)
  61. js1=json.loads(req2.text)
  62. #print(js1)
  63. elementJs1=js1["data"]["elements"][1]["elements"]
  64. #print(elementJs1)
  65. #print(type(elementJs1))
  66. theLASTlist={}
  67. for i in elementJs1:
  68.     print(i["title"]["text"])
  69.     print(i["headline"]["text"])
  70.     theLASTlist[i["title"]["text"]]=i["headline"]["text"]
  71. print(theLASTlist)
  72. with open(f"{domain}.txt",'w') as f:
  73.     f.write(f"{theLASTlist}")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement