Geocoding with Geopy and big data

2024/10/5 19:51:39

I have this CSV file which i'm feeding with this python script

    import csv
from geopy.geocoders import OpenCagegeolocator = OpenCage() #here some parameters are needed
with open('/Users/Ian/Desktop/Test02/151213_2015_martyrs_year_filtered_areas.csv', 'rb') as csvinput:with open('151213_locations_filtered_opencage.csv', 'w') as csvoutput:output_fieldnames = ['Province','Area', 'Country','Latitude','Longitude']writer = csv.DictWriter(csvoutput, delimiter=',', fieldnames=output_fieldnames)reader = csv.DictReader(csvinput)for row in reader:#here you have to replace the dict item by your csv column namesquery = ','.join(str(x) for x in (row['Country'],row['Province'],row['Area']))print(query)try:address, (latitude, longitude) = geolocator.geocode(query)except:latitude = 'N/A'longitude = 'N/A'#here is the writing sectionoutput_row = {}output_row['Province'] = row['Province']output_row['Area'] = row['Area']output_row['Country'] = row['Country']output_row['Latitude'] = latitudeoutput_row['Longitude'] = longitudewriter.writerow(output_row)

CSV FILE Excerpt

Province,Area,Country
Aleppo,Jarablus,Syria
Aleppo,,Syria
Aleppo,Kafrnaya,Syria
Aleppo,Bazzaa,Syria
Aleppo,Anadan,Syria
Aleppo,Salheen,Syria
Aleppo,Kafrahamreh,Syria
Aleppo,Batbo,Syria
Aleppo,Hulluk,Syria
Aleppo,Sukkari neighborhood,Syria
Aleppo,"Ein Arab ""Kobani"": Srain",Syria
Aleppo,Bab,Syria
Aleppo,Tel Rifaat,Syria
Aleppo,Izaz,Syria
Aleppo,Sfaireh,Syria
Aleppo,Hritan,Syria
Aleppo,Manbej,Syria
Aleppo,Karm Bitar,Syria
Aleppo,Atarib,Syria
Aleppo,Neirab,Syria
Aleppo,Afrin: Mariameen,Syria
Aleppo,Zerbeih Town,Syria
Aleppo,Sakhour,Syria
Aleppo,Tal Abad,Syria
Aleppo,Tal Arran,Syria
Aleppo,Talqrah,Syria
Aleppo,Tqad,Syria
Aleppo,Darat Azza,Syria
Aleppo,Bayanoun,Syria
Aleppo,Misakan,Syria
Aleppo,Qosaileh,Syria
Aleppo,Mashatieh neighborhood,Syria
Aleppo,Kabbasin,Syria
Aleppo,Harjalleih,Syria
Aleppo,Bab Road neighborhood,Syria
Aleppo,Qanater village,Syria
Aleppo,Maskaneh,Syria
Aleppo,Jeb el-Qibba,Syria
Aleppo,Hwer al-Aes,Syria
Aleppo,"Ein Arab""Kobani""",Syria
Aleppo,Anjareh,Syria
Aleppo,Hayyan,Syria
Aleppo,Sheikh Saeed,Syria
Aleppo,Liramon,Syria
Aleppo,Karam Muayassar,Syria
Aleppo,Tel Daman: Tel Maseh village,Syria
Aleppo,Eibeen Simon,Syria
Aleppo,Deir Hafir,Syria
Aleppo,Sheikh Ali village,Syria
Aleppo,Afrin,Syria
Aleppo,Khan Toman,Syria
Aleppo,Rasm al-Aboud village,Syria
Aleppo,Hulluk: Ein el-Tal,Syria
Aleppo,Khan el-Asal,Syria
Aleppo,Alshyoukh Alfoqani,Syria
Aleppo,Mare,Syria
Aleppo,Der Jamal,Syria
Aleppo,Mkahleh,Syria
Aleppo,Zebdieh,Syria
Aleppo,Ansari,Syria
Aleppo,Bustan el-Qassr,Syria
Aleppo,Eastern Ansari,Syria
Aleppo,Banjaira,Syria
Aleppo,Kallaseh,Syria
Aleppo,Tal Memo,Syria
Aleppo,Museijrat al-Bosheikh,Syria
Aleppo,Aziziah,Syria
Aleppo,Salahiddin,Syria
Aleppo,Tel Rifaat: Herpel,Syria
Aleppo,Shokaileh,Syria
Aleppo,Kafrobeid,Syria
Aleppo,Jazraya,Syria
Aleppo,Fardous,Syria
Aleppo,Mestaha,Syria
Aleppo,Bab Neirab,Syria
Aleppo,Magaier,Syria
Aleppo,Karam el-Nuzha,Syria
Aleppo,Tal Hdia,Syria
Aleppo,Talhia,Syria
Aleppo,Karam Al-Tarrab,Syria
Aleppo,Zerbeih town,Syria
Aleppo,Tel Daman,Syria
Aleppo,Great Orme,Syria
Aleppo,Ritian,Syria
Aleppo,Barkoum,Syria
Aleppo,Sheikh Maksoud,Syria
Aleppo,Ihres,Syria
Aleppo,Sfaireh: Azzan mountain,Syria
Aleppo,Hader village,Syria
Aleppo,Mraij,Syria
Aleppo,Deir Hafir: Tel Ayoub,Syria
Aleppo,Abtin village,Syria
Aleppo,Kafrnoran,Syria
Aleppo,Deir Hafir: Sheikh Ahmed village,Syria
Aleppo,Rasm al-Sheikh,Syria
Aleppo,Ezaa Neighborhood,Syria
Aleppo,Zitan,Syria
Aleppo,Kfarkarmin village,Syria
Aleppo,Blas,Syria
Aleppo,Seif El-Dawla,Syria
Aleppo,Bab el-Faraj,Syria
Aleppo,Teljabin,Syria
Aleppo,Rjaileh,Syria
Aleppo,Kafra,Syria
Aleppo,Ziyareh,Syria
Aleppo,Sfaireh: Mgairat Shibli village,Syria
Aleppo,Talaarn,Syria
Aleppo,Sahareh,Syria
Aleppo,Shaar,Syria
Aleppo,Meng,Syria
Aleppo,Mowasalat,Syria
Aleppo,Qadi Askar,Syria
Aleppo,Mashad,Syria
Aleppo,Izaz: Kfarkplpin,Syria
Aleppo,Rashideen,Syria
Aleppo,Marja,Syria
Aleppo,Kafin,Syria
Aleppo,Dabik,Syria
Aleppo,Suleiman al-Halabi,Syria
Aleppo,Mayer,Syria
Aleppo,Tlaleen,Syria
Aleppo,Hamdania,Syria
Aleppo,Tel Tokan,Syria
Aleppo,Tel Shgaib,Syria
Aleppo,Tadif,Syria
Aleppo,Manbei: Deir Jamal,Syria
Aleppo,Qubtan el-Jabal,Syria
Aleppo,Ahtimlat,Syria
Aleppo,Majas Village,Syria
Aleppo,Masaken al-Sabeel,Syria
Aleppo,Sheikh Khader,Syria
Aleppo,Masharq,Syria
Aleppo,Bshentreh village,Syria
Aleppo,Hur village,Syria
Aleppo,Ein Arab: Srain,Syria
Aleppo,Amerieh,Syria
Aleppo,Safira: Talaran,Syria
Aleppo,Jaina,Syria
Aleppo,Ashrafieh,Syria
Aleppo,Qustal Harami,Syria
Aleppo,Marestit el-Khan,Syria
Aleppo,Hamidiya village,Syria
Aleppo,Muyassar neighborhood,Syria
Aleppo,Zyade village,Syria
Aleppo,Bab: Braij Palace village,Syria
Aleppo,Um al-Hosh village,Syria
Aleppo,Darat Azza: Mount Simon: Deir Simeon Village,Syria
Aleppo,Arran,Syria
Aleppo,Shwehneh Mountain,Syria
Aleppo,Masakin Hanano,Syria
Aleppo,Kafrdaal,Syria
Aleppo,Hoteh,Syria
Aleppo,Rabiea,Syria
Aleppo,bab,Syria
Aleppo,Karam el-Baik neighborhood,Syria
Aleppo,Madaein Kabira,Syria
Aleppo,Maadi neighborhood,Syria
Aleppo,Jamiat al-Zahraa,Syria
Aleppo,Maarat Artik,Syria
Aleppo,Karm Al-Afandi,Syria
Aleppo,New Aleppo,Syria
Aleppo,Deir Hafir: Rasm Harmel,Syria
Aleppo,"Ein Arab ""Kobani""",Syria
Aleppo,Absmo,Syria
Aleppo,Deir Hassan,Syria
Aleppo,Talkrah,Syria
Aleppo,Simon Mount: Mansoura,Syria
Aleppo,Atarib: Twama,Syria
Aleppo,Kafarnaha,Syria
Aleppo,Bab Qinnasrin,Syria
Aleppo,Pedro Mount,Syria
Aleppo,Dahrat Awad,Syria
Aleppo,Qirliq neighborhood,Syria
Aleppo,Um Hosh,Syria
Aleppo,Baideen,Syria
Aleppo,Akhtareen,Syria
Aleppo,Izaz: Soran town,Syria
Aleppo,Harableh,Syria
Aleppo,Bab: Abu Taltal village,Syria
Aleppo,Bareh Azzawi,Syria
Aleppo,Malha,Syria
Aleppo,Ezaa neighborhood,Syria
Aleppo,Kafernasaeh,Syria
Aleppo,Karam el-Jabal,Syria
Aleppo,Tadeel,Syria
Aleppo,Abo Mjaher,Syria
Aleppo,al-Aes,Syria
Aleppo,khalsa,Syria
Aleppo,Arjileh,Syria
Aleppo,Alas,Syria
Aleppo,Khalsa,Syria
Aleppo,Jisr el-Hajj,Syria
Aleppo,Qataneh,Syria
Aleppo,Ahmadia,Syria
Aleppo,Garliq,Syria
Aleppo,Sheikh Najjar,Syria

But the original csv looks like this

rowid,Name,Status,Sex,Province,Area,Date_of_Death,Cause_of_Death
1,Hasan Ali Saad al-Hareeri ,Civilian,Adult - Male,Daraa,Sawara,2015-12-10,Warplane shelling
2,Riham Adnan Swais ,Civilian,Adult - Female,Homs,Telbeiseh,2015-12-10,Shelling
3,Ammar Ahmad al-Njoam ,Civilian,Adult - Male,Aleppo,Jarablus,2015-12-10,Explosion
4,Yaseen Slaiman al-Salkhadi ,Civilian,Adult - Male,Daraa,Jassim,2015-12-10,Warplane shelling
5,Ayman Noman Qanatra ,Civilian,Adult - Male,Daraa,Jassim,2015-12-10,Warplane shelling
6,Abdul Kareem Mohammad al-Tamki ,Civilian,Adult - Male,Daraa,Sheikh Miskeen,2015-12-10,Warplane shelling
7,Ahmad Mohammad al-Tamki ,Civilian,Child - Male,Daraa,Sheikh Miskeen,2015-12-10,Warplane shelling
8,Hamze Mohammad al-Tamki ,Civilian,Adult - Male,Daraa,Sheikh Miskeen,2015-12-10,Warplane shelling
9,Mohammad Ahmad al-Khaleel ,Non-Civilian,Adult - Male,Daraa,Sheikh Miskeen,2015-12-10,Shelling
10,Abdul Kareem Abdul Lateef al-Mohammad ,Non-Civilian,Adult - Male,Hama,Lattamna,2015-12-10,Shooting
11,Mahdi Basem Qatteni ,Non-Civilian,Adult - Male,Idlib,Khan Sheikhoun,2015-12-10,Shooting
12,Ahmad Ibraheem al-Sayed Omar ,Civilian,Adult - Male,Aleppo,,2015-12-10,Warplane shelling
13,Unidentified ,Civilian,Child - Male,Aleppo,Kafrnaya,2015-12-10,Warplane shelling
14,Unidentified 1 ,Civilian,Adult - Female,Aleppo,Bazzaa,2015-12-10,Warplane shelling
15,Unidentified 2 ,Civilian,Child - Male,Aleppo,Bazzaa,2015-12-10,Warplane shelling
16,Unidentified 3 ,Civilian,Child - Male,Aleppo,Bazzaa,2015-12-10,Warplane shelling
17,Mohammad Ahmad al-Farhoud ,Civilian,Adult - Male,Idlib,Telminis,2015-12-10,Shooting
18,Yousef al-Saleh ,Non-Civilian,Adult - Male,Idlib,Kafroumeh,2015-12-10,Shooting
19,Basel Hsain al-Knoah ,Non-Civilian,Adult - Male,Idlib,Kafroumeh,2015-12-10,Shooting
20,Basel Abdul Rahman Qintareh ,Non-Civilian,Adult - Male,Idlib,Kafroumeh,2015-12-10,Shooting
21,Hani Khairallah Jbaneej ,Non-Civilian,Adult - Male,Idlib,Kafroumeh,2015-12-10,Shooting
22,Ahmad Mohammad al-Shartah ,Non-Civilian,Adult - Male,Idlib,Kafroumeh,2015-12-10,Shooting
23,wife of Faisal al-Ahmad al-Khaleefe ,Civilian,Adult - Female,Deir Ezzor,Qourieh,2015-12-10,Warplane shelling
24,Unidentified ,Civilian,Adult - Male,Deir Ezzor,Takaya,2015-12-10,Kidnapping - Execution
25,Unidentified 1 ,Civilian,Adult - Male,Deir Ezzor,Tabya Jazera village,2015-12-10,Kidnapping - Execution
26,Unidentified 2 ,Civilian,Adult - Male,Deir Ezzor,Tabya Jazera village,2015-12-10,Kidnapping - Execution
27,Unidentified 3 ,Civilian,Adult - Male,Deir Ezzor,Tabya Jazera village,2015-12-10,Kidnapping - Execution
28,Unidentified 4 ,Civilian,Adult - Male,Deir Ezzor,Tabya Jazera village,2015-12-10,Kidnapping - Execution
29,Unidentified 5 ,Civilian,Adult - Male,Deir Ezzor,Tabya Jazera village,2015-12-10,Kidnapping - Execution
30,Fayez Qabaqji ,Non-Civilian,Adult - Male,Lattakia,Turkmen mount,2015-12-10,Shooting
31,Fahed al-Asali ,Non-Civilian,Adult - Male,Damascus,Jobar,2015-12-09,Shooting
32,Amoun Murad ,Civilian,Adult - Female,Idlib,Jisr Shagour: Mraand,2015-12-09,Warplane shelling
33,Kafa Mezweq ,Civilian,Adult - Female,Idlib,Jisr Shagour: Mraand,2015-12-09,Warplane shelling
34,Hala Mohammad ,Civilian,Adult - Female,Idlib,Jisr Shagour: Mraand,2015-12-09,Warplane shelling
35,Ahmad Mezweq ,Civilian,Child - Male,Idlib,Jisr Shagour: Mraand,2015-12-09,Warplane shelling
36,Ahlam Mezweq ,Civilian,Child - Female,Idlib,Jisr Shagour: Mraand,2015-12-09,Warplane shelling
37,Adnan Hussain Haj Kheder ,Civilian,Child - Male,Idlib,Jisr Shagour: Mraand,2015-12-09,Warplane shelling
38,Wife of Hussain Haj Kheder ,Civilian,Adult - Female,Idlib,Jisr Shagour: Mraand,2015-12-09,Warplane shelling
39,daughter of Hussain Haj Kheder 1 ,Civilian,Child - Female,Idlib,Jisr Shagour: Mraand,2015-12-09,Warplane shelling
40,Muhammad Muhammad al-Aoutani ,Civilian,Adult - Male,Damascus Suburbs,Hamouria,2015-12-09,Warplane shelling
41,Ibrahim al-Shami ,Civilian,Adult - Male,Damascus Suburbs,Hamouria,2015-12-09,Warplane shelling
42,Tahsin al-Durra ,Civilian,Adult - Male,Damascus Suburbs,Douma,2015-12-09,Warplane shelling
43,Samer Safaya ,Civilian,Adult - Male,Damascus Suburbs,Hamouria,2015-12-09,Warplane shelling
44,Muhammad al-Qassir ,Civilian,Child - Male,Damascus Suburbs,Hamouria,2015-12-09,Warplane shelling
45,Ibtisam Abdlunaser al-Khatib ,Civilian,Child - Female,Damascus Suburbs,Hamouria,2015-12-09,Warplane shelling
46,Tuqa Saria al-Zein ,Civilian,Child - Female,Damascus Suburbs,Hamouria,2015-12-09,Warplane shelling
47,Hadi Darwish ,Civilian,Child - Male,Damascus Suburbs,Hamouria,2015-12-09,Warplane shelling
48,Ghalia Abdulnaser al-Khatib ,Civilian,Child - Female,Damascus Suburbs,Hamouria,2015-12-09,Warplane shelling
49,Yamen Amin Abbas ,Civilian,Child - Male,Damascus Suburbs,Hamouria,2015-12-09,Warplane shelling
50,Muhammad Wasim al-Kharboutli ,Civilian,Adult - Male,Damascus Suburbs,Mleha,2015-12-09,Warplane shelling
51,Muhammad Ismael al-Khatib ,Civilian,Adult - Male,Damascus Suburbs,Hamouria,2015-12-09,Warplane shelling
52,Ismael Saeid al-Khatib ,Civilian,Adult - Male,Damascus Suburbs,Hamouria,2015-12-09,Warplane shelling
53,Saeid Abd al-Jawad ,Civilian,Adult - Male,Damascus Suburbs,Hamouria,2015-12-09,Warplane shelling
54,Abdulmoein al-Zein ,Civilian,Adult - Male,Damascus Suburbs,Hamouria,2015-12-09,Warplane shelling
55,Unidentified 1 ,Civilian,Adult - Male,Damascus Suburbs,Hamouria,2015-12-09,Warplane shelling
56,Unidentified 2 ,Civilian,Adult - Male,Damascus Suburbs,Hamouria,2015-12-09,Warplane shelling
57,Unidentified 3 ,Civilian,Adult - Male,Damascus Suburbs,Hamouria,2015-12-09,Warplane shelling
58,Mohammd Omar al-Deirani ,Non-Civilian,Adult - Male,Damascus Suburbs,Douma,2015-12-09,Shelling
59,daughter of Hussain Haj Kheder 2 ,Civilian,Child - Female,Idlib,Jisr Shagour: Mraand,2015-12-09,Warplane shelling
60,Ramez Shaher Qadour ,Civilian,Child - Male,Damascus Suburbs,Hamouria,2015-12-09,Warplane shelling
61,Yazan Shaher Qadour ,Civilian,Child - Male,Damascus Suburbs,Hamouria,2015-12-09,Warplane shelling
62,Sham Ahmad Qadour ,Civilian,Child - Female,Damascus Suburbs,Hamouria,2015-12-09,Warplane shelling
63,Ibraheem Ahmad Qadour ,Civilian,Child - Male,Damascus Suburbs,Hamouria,2015-12-09,Warplane shelling
64,Fatemah Qadour ,Civilian,Adult - Female,Damascus Suburbs,Hamouria,2015-12-09,Warplane shelling
65,Houriah al-Aqra ,Civilian,Adult - Female,Damascus Suburbs,Hamouria,2015-12-09,Warplane shelling
66,Shahed al-Yousef ,Civilian,Child - Female,Damascus Suburbs,Hamouria,2015-12-09,Warplane shelling
67,Faridah Qalla ,Civilian,Adult - Female,Damascus Suburbs,Hamouria,2015-12-09,Warplane shelling
68,Abo Eisa ,Non-Civilian,Adult - Male,Damascus,Yarmuk Camp,2015-12-09,Shooting
69,Mohammad Ataya Hadeideh ,Civilian,Adult - Male,Damascus Suburbs,Saqba,2015-12-09,Warplane shelling
70,Mohammad Abdullah Ali Raslan ,Non-Civilian,Adult - Male,Damascus Suburbs,Douma,2015-12-09,Shooting
71,Ahmad Khaled al-Ayoub ,Non-Civilian,Adult - Male,Idlib,Al-Tih town,2015-12-09,Shooting
72,Salem Abo Saeid ,Non-Civilian,Adult - Male,Idlib,Saraman,2015-12-09,Shooting
73,Muneeb Abdul Baset al-Shawarghi ,Non-Civilian,Adult - Male,Idlib,Maarshamsha,2015-12-09,Shooting
74,Mohammad Ahmad al-Alayan ,Civilian,Adult - Male,Hama,Kafrzita,2015-12-09,Warplane shelling
75,Bahaa Eddin al-Hamwi ,Non-Civilian,Adult - Male,Damascus Suburbs,Douma,2015-12-09,Shooting
76,Saeid Smoad ,Non-Civilian,Adult - Male,Damascus Suburbs,Douma,2015-12-09,Shooting
77,Basheer Mahmoud Shihab ,Non-Civilian,Adult - Male,Damascus Suburbs,Douma,2015-12-09,Shooting
78,Unidentified ,Civilian,Adult - Male,Homs,Palmyra,2015-12-09,Warplane shelling
79,Ahmad Hamze Layla ,Civilian,Child - Male,Aleppo,Anadan,2015-12-09,Warplane shelling
80,Abdul Wahhab Hsain ,Civilian,Adult - Male,Idlib,Jisr Shagour: Najieh,2015-12-08,Warplane shelling
81,Khaled Khalaf al-Zubi ,Civilian,Adult - Male,Daraa,Jassim,2015-12-08,Warplane shelling
82,"Hameede Hamed al-Hariri ""al-Haishan"" ",Civilian,Adult - Female,Daraa,Sheikh Miskeen,2015-12-08,Shelling
83,Ziyad Sayel al-Mreheel ,Non-Civilian,Adult - Male,Daraa,Dael,2015-12-08,Shooting
84,Ahmad Abdul Ilah al-Dairi ,Civilian,Adult - Male,Daraa,Sheikh Miskeen,2015-12-08,Detention - Torture
85,Noah Jaqmour ,Non-Civilian,Adult - Male,Idlib,Ariha,2015-12-08,Shooting
86,Mahmoud Beshe ,Civilian,Child - Male,Aleppo,Salheen,2015-12-08,Warplane shelling
87,Omar Sbainati ,Civilian,Child - Male,Damascus Suburbs,Marj,2015-12-08,Warplane shelling
88,Meryam al-Jassem ,Civilian,Adult - Female,Damascus Suburbs,Marj,2015-12-08,Warplane shelling
89,Unidentified ,Civilian,Adult - Female,Hama,Telool al-Hemer,2015-12-08,Warplane shelling
90,Hatem Uday Akashe ,Civilian,Child - Male,Daraa,Jassim,2015-12-08,Warplane shelling
91,Waddah Yaseen al-Ghazzawi ,Civilian,Adult - Male,Daraa,Sheikh Miskeen,2015-12-08,Detention - Torture
92,Mohammad Sami al-Mahmoud ,Civilian,Adult - Male,Aleppo,Kafrahamreh,2015-12-08,Warplane shelling
93,Haloum al-Aas ,Civilian,Adult - Male,Aleppo,Kafrahamreh,2015-12-08,Warplane shelling
94,Maroush Abdo al-Mahmoud ,Civilian,Adult - Female,Aleppo,Kafrahamreh,2015-12-08,Warplane shelling
95,Samirah Abdo al-Mahmoud ,Civilian,Adult - Female,Aleppo,Kafrahamreh,2015-12-08,Warplane shelling
96,Sabah Sehreej ,Civilian,Adult - Female,Aleppo,Kafrahamreh,2015-12-08,Warplane shelling
97,Unidentified ,Civilian,Adult - Male,Aleppo,Kafrahamreh,2015-12-08,Warplane shelling
98,Abduljalil al-Mahmoud ,Civilian,Child - Male,Aleppo,Kafrahamreh,2015-12-08,Warplane shelling
99,Hala al-Mahmoud ,Civilian,Child - Female,Aleppo,Kafrahamreh,2015-12-08,Warplane shelling
100,Yaser Yaser al-Mahmoud ,Civilian,Child - Male,Aleppo,Kafrahamreh,2015-12-08,Warplane shelling
101,Abdulraheem al-Hamoud ,Non-Civilian,Adult - Male,Aleppo,Batbo,2015-12-08,Shooting
102,Ahmad Hanouf ,Non-Civilian,Adult - Male,Lattakia,Jabla,2015-12-08,Shooting
103,Fadi Subhi al-Omar ,Non-Civilian,Adult - Male,Idlib,Binnish,2015-12-08,Shooting
104,Mohammad Nour Abdulla al-Aaraj ,Non-Civilian,Adult - Male,Idlib,Has,2015-12-08,Shooting
105,Mohammad Ibraheem al-Ali ,Non-Civilian,Adult - Male,Idlib,Kafrsijneh,2015-12-08,Shooting
106,Mulham Ahmad Qeetaz ,Non-Civilian,Adult - Male,Idlib,Maart Numan,2015-12-08,Shooting
107,Murad Mohammad Qeetaz ,Non-Civilian,Adult - Male,Idlib,Maart Numan,2015-12-08,Shooting
108,Abdul Hameed Musa al-Gharibi ,Non-Civilian,Adult - Male,Idlib,Kafrauaid,2015-12-08,Shooting
109,Mohammad Badran ,Civilian,Adult - Male,Daraa,Khirbet Ghazaleh,2015-12-08,Detention - Torture
110,Mohammad Natheir Darkal ,Civilian,Adult - Male,Damascus,Midan,2015-12-08,Detention - Torture
111,Unidentified ,Civilian,Adult - Female,Raqqa,Garimat Huzeima,2015-12-08,Warplane shelling
112,Unidentified ,Civilian,Child - Male,Damascus Suburbs,Madaya,2015-12-08,Other
113,Unidentified 1 ,Civilian,Adult - Male,Damascus,Erbeen,2015-12-08,Shelling
114,Unidentified 2 ,Civilian,Adult - Male,Damascus,Erbeen,2015-12-08,Shelling
115,Mohammad Ahmad Abd Rabuh ,Civilian,Child - Male,Damascus Suburbs,Hamouria,2015-12-08,Shelling
116,From al-Jebbah Family ,Civilian,Child - Male,Damascus Suburbs,Harasta,2015-12-08,Shelling
117,Ibraheem Saleh al-Khateeb ,Civilian,Adult - Male,Daraa,Enkhel,2015-12-08,Warplane shelling
118,Fatemah al-Jubah Ji ,Civilian,Adult - Female,Damascus Suburbs,Harasta,2015-12-08,Shelling
119,Ismael Khaled Batman al-Zgheer ,Civilian,Adult - Male,Homs,Palmyra,2015-12-08,Warplane shelling
120,Zaher al-Homsi ,Non-Civilian,Adult - Male,Hama,,2015-12-08,Shooting
121,Ahmad Hamdo al-Hallaq ,Non-Civilian,Adult - Male,Hama,Soran,2015-12-08,Shooting
122,Omar al-Hsain ,Non-Civilian,Adult - Male,Hama,,2015-12-08,Shooting
123,Mohammad Abdul Rahman Reslan ,Non-Civilian,Adult - Male,Aleppo,,2015-12-08,Shooting
124,Slaiman Shaghal ,Civilian,Child - Male,Aleppo,Anadan,2015-12-08,Warplane shelling
125,Yazan Hassan Hsain ,Non-Civilian,Adult - Male,Idlib,Kafryhmoul,2015-12-07,Shooting
126,Suleiman Waleed al-Ayanah ,Civilian,Adult - Male,Damascus Suburbs,Douma,2015-12-07,Shelling
127,Huda al-Aani ,Civilian,Adult - Female,Deir Ezzor,Ardi,2015-12-07,Warplane shelling
128,son of Huda al-Aani ,Civilian,Child - Male,Deir Ezzor,Ardi,2015-12-07,Warplane shelling
129,Khaled Konbel ,Non-Civilian,Adult - Male,Lattakia,Turkmen mount,2015-12-07,Shooting
130,Ahmad Abo al-Wared ,Non-Civilian,Adult - Male,Damascus Suburbs,Daraya,2015-12-07,Shooting
131,Omar Ali al-Ekrah ,Non-Civilian,Adult - Male,Damascus Suburbs,Douma,2015-12-07,Shooting
132,Mohammad Majed Kabarah ,Civilian,Child - Male,Damascus Suburbs,Zamalka,2015-12-07,Shelling
133,Om Jameel Kheito ,Civilian,Adult - Female,Damascus Suburbs,Zabadany,2015-12-07,Explosion
134,Omar Mustafa Jdeid ,Civilian,Adult - Male,Damascus Suburbs,Madaya,2015-12-07,Explosion
135,"Wael Mahmoud ""Istanbouli"" ",Civilian,Adult - Male,Damascus Suburbs,Madaya,2015-12-07,Explosion
136,Hasan Ahmad al-Khateeb ,Civilian,Adult - Male,Aleppo,Kafrahamreh,2015-12-07,Warplane shelling
137,Abdulla Ramadan ,Civilian,Adult - Male,Aleppo,Kafrahamreh,2015-12-07,Warplane shelling
138,Hamdo Ramadan ,Civilian,Adult - Male,Aleppo,Kafrahamreh,2015-12-07,Warplane shelling
139,Raed Ramadan ,Civilian,Adult - Male,Aleppo,Kafrahamreh,2015-12-07,Warplane shelling
140,Aamer Ramadan ,Civilian,Adult - Male,Aleppo,Kafrahamreh,2015-12-07,Warplane shelling
141,Mohammad Salem al-Mahmoud ,Civilian,Adult - Male,Aleppo,Kafrahamreh,2015-12-07,Warplane shelling
142,Yehya Qasemo ,Non-Civilian,Adult - Male,Hama,Al-Sermenieh,2015-12-07,Shooting
143,Hasan Ahmad al-Hardan ,Civilian,Adult - Male,Aleppo,Salheen,2015-12-07,Warplane shelling
144,Ayda al-Hasan ,Civilian,Adult - Female,Aleppo,Salheen,2015-12-07,Warplane shelling
145,Sahar Hamwi ,Civilian,Adult - Female,Aleppo,Salheen,2015-12-07,Warplane shelling
146,Abdul Hameed Sultan ,Civilian,Adult - Male,Aleppo,Hulluk,2015-12-07,Warplane shelling
147,Bilal Mahmoud ,Civilian,Child - Male,Aleppo,Hulluk,2015-12-07,Warplane shelling
148,Sahar Ghazal al-Hamwi ,Civilian,Adult - Female,Aleppo,Hulluk,2015-12-07,Warplane shelling
149,Fatme Ahmad al-Jasem ,Civilian,Adult - Female,Aleppo,Hulluk,2015-12-07,Warplane shelling
150,Unidentified ,Civilian,Child - Male,Aleppo,Hulluk,2015-12-07,Warplane shelling
151,Hasan Mohammad Rammo ,Civilian,Adult - Male,Aleppo,Sukkari neighborhood,2015-12-07,Warplane shelling
152,Hajar Mahmoud Akeel ,Civilian,Child - Female,Aleppo,Sukkari neighborhood,2015-12-07,Warplane shelling
153,Shaymaa Mahmoud Akeel ,Civilian,Child - Female,Aleppo,Sukkari neighborhood,2015-12-07,Warplane shelling
154,Abed Seyam ,Non-Civilian,Adult - Male,Damascus,Yarmuk Camp,2015-12-07,Warplane shelling
155,Unidentified ,Civilian,Adult - Male,Aleppo,,2015-12-07,Shelling
156,Abdul Rawof Mohammad ,Non-Civilian,Adult - Male,Aleppo,,2015-12-07,Shooting
157,Waleed Hamoush ,Non-Civilian,Adult - Male,Aleppo,,2015-12-07,Shooting
158,Abdulkareem al-Suleiman ,Non-Civilian,Adult - Male,Aleppo,,2015-12-07,Shooting
159,Mohammad al-Qarrat ,Non-Civilian,Adult - Male,Aleppo,,2015-12-07,Shooting
160,Abdullah al-Melhem al-Abdullah ,Non-Civilian,Adult - Male,Aleppo,,2015-12-07,Shooting
161,Yaser Saeed Ghanoum ,Non-Civilian,Adult - Male,Aleppo,,2015-12-07,Shooting
162,Ali Sultan al-Samouri ,Non-Civilian,Adult - Male,Daraa,Jamleh,2015-12-07,Kidnapping - Execution
163,Yousef Sultan al-Samouri ,Non-Civilian,Adult - Male,Daraa,Jamleh,2015-12-07,Kidnapping - Execution
164,Rami al-Sayo ,Non-Civilian,Adult - Male,Deir Ezzor,,2015-12-07,Kidnapping - Execution
165,Akram al-Merie ,Civilian,Adult - Male,Deir Ezzor,,2015-12-07,Kidnapping - Execution
166,Adnan Saleh al-Shaqran ,Non-Civilian,Adult - Male,Daraa,Fuqia,2015-12-07,Shooting
167,Alaa Wael Sadaqa ,Non-Civilian,Adult - Male,Daraa,Fuqia,2015-12-07,Shooting
168,Oqba Jad al-Kareem al-Hareeri ,Non-Civilian,Adult - Male,Daraa,Fuqia,2015-12-07,Shooting
169,Ali Abdul Ghani al-Shaqran ,Non-Civilian,Adult - Male,Daraa,Fuqia,2015-12-07,Shooting
170,Bushra Ahmad Adeel al-Hareeri ,Civilian,Adult - Female,Daraa,Bassr Al-Hareer,2015-12-07,Warplane shelling
171,Hsain Sami Shawar ,Civilian,Adult - Male,Idlib,Jisr Shagour: Najieh,2015-12-07,Warplane shelling
172,wife of Hsain Sami Shawar ,Civilian,Adult - Female,Idlib,Jisr Shagour: Najieh,2015-12-07,Warplane shelling

There are 15k+ lines of this and as you may notice some places have the same entries several times. My workflow was to get the data from the sqlite database into this big csv. After that i filtered doubled entries so I just got every place/province once. Therefore it was possible to decrease the query for the geocoder (I was so naive to think that you don't have a limit at all). My problem now is that I have two datasets which I can't put together again because simple "search and replace all entries" with the latitude/longitude information would be still a difficult and time-wasting task. Also because the entries numbers wouldn't match. I have two ideas and I for both of them I have no clue how to get there because I'm new to python and I was working all day on this data.

  1. Automate the process of search and replace (Province/Area) with (Province/Area,Latitude,Longitude)
  2. Per incident I have several people who died at the same place on the same date. I could technically sum them up so the whole data woud become smaller (Where should I do this. In SQLite oder in Python with the csv). So i could query this data to the geocoder so I have a whole file again. Something like this where I would query the Province and the area to the geocoder:

     rowid,Value_by_People,Status,Province,Area,Date_of_Death,Cause_of_Death
    1,13,Civilian,Daraa,Sawara,2015-12-10,Warplane shelling
    2,50,Civilian,Daraa,Sawara,2015-12-7,Shooting
    

Thank you for your ideas

EDIT1

query = ','.join(str(x) for x in (row['Country'],row['Province'],row['Area']))errorquery = ','.join(str(x) for x in (row['Province'],row['Country']))print(query)try:address, (latitude, longitude) = geolocator.geocode(query)except:address, (latitude, longitude) = geolocator.geocode(errorquery)#latitude = 'N/A'#longitude = 'N/A'

EDIT 3

I tried the changes but i cant get it working

import csv
from geopy.geocoders import GoogleV3geolocator = GoogleV3() #here some parameters are needed
lookups = {} # declare this above the loop
global tempquery
global latitude, longitudedef lookup_location(query, errorquery, lookups):tempquery = querytry:address, (latitude, longitude) = lookups[query]except KeyError: # new lookuptry:#address, (latitude, longitude) = geolocator.geocode(query)address, (latitude, longitude) = lookups[errorquery]except: # should probably try to catch specific exceptions#address = latitude = longitude = Nonetry:address, (latitude, longitude) = geolocator.geocode(query)#address, (latitude, longitude) = lookups[errorquery]except KeyError: # new lookuptry:address, (latitude, longitude) = geolocator.geocode(errorquery)tempquery = errorqueryexcept:address = latitude = longitude = 'None'tempquery = errorquerylookups[tempquery] = address, (latitude, longitude)return address, latitude, longitudewith open('151213_Martyrs_filtered_civilian_2015_with_country.csv', 'rb') as csvinput:with open('151213_locations_filtered_fiexedwith_cities_country.csv', 'w') as csvoutput:output_fieldnames = ['Name','Status','Sex','Country','Province','Area','Date_of_Death','Cause_of_Death','Latitude','Longitude']writer = csv.DictWriter(csvoutput, delimiter=',', fieldnames=output_fieldnames)reader = csv.DictReader(csvinput)for row in reader:#here you have to replace the dict item by your csv column namesquery = ','.join(str(x) for x in (row['Country'],row['Province'],row['Area']))errorquery = ','.join(str(x) for x in (row['Country'],row['Province'],row['Province']))lookup_location(query, errorquery, lookups)output_row = {}output_row['Name'] = row['Name']output_row['Status'] = row['Status']output_row['Sex'] = row['Sex']output_row['Country'] = row['Country']output_row['Province'] = row['Province']output_row['Area'] = row['Area']output_row['Date_of_Death'] = row['Date_of_Death']output_row['Cause_of_Death'] = row['Cause_of_Death']output_row['Latitude'] = 0output_row['Longitude'] = 0writer.writerow(output_row)

With these errors

Traceback (most recent call last):File "geopy_script_04_changes.py", line 43, in <module>lookup_location(query, errorquery, lookups)File "geopy_script_04_changes.py", line 21, in lookup_locationaddress, (latitude, longitude) = geolocator.geocode(query)
TypeError: 'NoneType' object is not iterable
Answer

I changed the code a little bit so it worked for me. Thank you for your ideas and the help.

import csv
from geopy.geocoders import GoogleV3geolocator = GoogleV3() #here some parameters are needed
lookups = {}with open('151213_Martyrs_filtered_civilian_2015_with_country.csv', 'rb') as csvinput:with open('151213_output_martyrs_final.csv', 'w') as csvoutput:output_fieldnames = ['Name','Status','Sex','Country','Province','Area','Date_of_Death','Cause_of_Death','Latitude','Longitude']writer = csv.DictWriter(csvoutput, delimiter=',', fieldnames=output_fieldnames)reader = csv.DictReader(csvinput)for row in reader:if row['Province'].split(' ', 1) == 'Damascus':rowProv = "Damascus"else:rowProv = row['Province']#here you have to replace the dict item by your csv column namesquery = ','.join(str(x) for x in (rowProv, row['Area']))try:address, (latitude, longitude) = lookups[query]except KeyError: # new lookuptry:query = ','.join(str(x) for x in (rowProv, rowProv))address, (latitude, longitude) = lookups[query]print('lookup')except KeyError: # searchtry:query = ','.join(str(x) for x in (rowProv, row['Area']))address, (latitude, longitude) = geolocator.geocode(query)except: # errorquery = ','.join(str(x) for x in (rowProv, rowProv))address, (latitude, longitude) = geolocator.geocode(query)lookups[query] = address, (latitude, longitude)print(query)#here is the writing sectionoutput_row = {}output_row['Name'] = row['Name']output_row['Status'] = row['Status']output_row['Sex'] = row['Sex']output_row['Country'] = row['Country']output_row['Province'] = row['Province']output_row['Area'] = row['Area']output_row['Date_of_Death'] = row['Date_of_Death']output_row['Cause_of_Death'] = row['Cause_of_Death']output_row['Latitude'] = latitudeoutput_row['Longitude'] = longitudewriter.writerow(output_row)
https://en.xdnf.cn/q/119868.html

Related Q&A

an error in sending json data to flask server [duplicate]

This question already has answers here:How to get POSTed JSON in Flask?(13 answers)Closed 1 year ago.I have a json data as {"age":59.0,"bp":70.0,"sg":1.01,"al":…

terminate a python program when it hanged using subprocess python

I have a main.py which open a new cmd (subprocess) when another program (test.py, in same directory) is hanged. To determining test.py is hanged or not, I used latest modified time (os.path.getmtime(te…

causes of Python IOError: [Errno 13] Permission denied

When attempting to write a file, I can get this same error when any of following conditions applies:The file exists and is marked read-only. I dont have write permission for the folder and therefore ca…

Python Invalid Syntax IF statement

Im trying to make a quiz in python but I keep getting invalid syntax errors.#This is for addition questions.if (question=add) <---- That is where i get the error for i in range(0,10):first_number_a…

record a web page using python [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.Want to improve this question? Update the question so it focuses on one problem only by editing this post.Closed 3…

returning a string from askopenfilename() to a entry box

I have seen many postings on the use of askopenfilename(), however I still cant seem to find anything to help me display the full file path in an entry box once I have selected said file. below I have…

Overflow error in Python program

Please help me to understand why this code doesnt work. I know there is something very stupid wrong. This should be an implementation of the fourth order Runge kutta algorithm to solve Lorentz system o…

python login 163 mail server

When I use this script to login the 163 mail server,there is something wrong! My python env is python 2.7.8 Please help me!import imaplibdef open_connect(verbose=False):host = imap.163.comport = 993if …

How to get list of keys that share a value with another key within the same dictionary?

I have a dictionary of unique keys where some keys share the same value. For example:D = {ida:{key:1},idb:{key:2},idc:{key:3},idd:{key:3},ide:{key:4},idf:{key:4},idg:{key:4}}I want a list of keys that…

Sqlite3 Error: near question mark: syntax error [duplicate]

This question already has answers here:Parameterized query binding table name as parameter gives error(3 answers)How to use variables in SQL statement in Python?(5 answers)Closed last year.I am trying…