-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathscrawler1.py
More file actions
33 lines (21 loc) · 983 Bytes
/
Copy pathscrawler1.py
File metadata and controls
33 lines (21 loc) · 983 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#from collections import OrderedDict
from bs4 import BeautifulSoup
import requests
source = requests.get('https://www.naukri.com/java-jobs').text
soup=BeautifulSoup(source,'html.parser')
javajob=[]
for desc in soup.find_all('a',attrs={'class':['content']}):
a=dict()
a['count']=int(desc['count'])
a['designation']=desc.find('li',attrs={'class':['desig']}).text
a['company_name']=desc.find('span',attrs={'class':['org']}).text
a['experience']=desc.find('span',attrs={'class':['exp']}).text
a['location']=desc.find('span',attrs={'class':['loc']}).text
a['comp_descr']=desc.find('span',attrs={'class':['org']}).text+desc.find('span',attrs={'class':['loc']}).text
url=desc['href']
desc_url = requests.get(url).text
url_soup=BeautifulSoup(desc_url,'html.parser')
for comp_desc in url_soup.find_all('span',attrs={'itemprop':['description']}):
a.update({'comp_descr': comp_desc.find('div',attrs={'class':['discp']}).text})
javajob.append(a)
#print javajob