<prompt> Andika programu ya Python web scraper ambayo hutoa orodha za kazi kutoka kwa tovuti maarufu ya bodi ya kazi, kuzichuja kulingana na vigezo vilivyoainishwa na mtumiaji k.m., eneo, safu ya mshahara, na kuhifadhi matokeo katika hifadhidata ya SQLite.  <response>: Ili kuunda kichakachua wavuti ambacho hutoa orodha za kazi kutoka kwa tovuti maarufu ya bodi ya kazi, tunaweza kutumia maktaba za Python kama maombi, BeautifulSoup, na sqlite3. Katika mfano huu, nitaonyesha jinsi ya kufuta kazi kutoka kwa Indeed.com.Kwanza, hakikisha kuwa una maktaba zinazohitajika zilizosakinishwa:bashimaombi ya kusakinisha bomba beautifulsoup4Sasa, hebu tuandike msimbo wa kifuta mtandao wetu: chatumaombi ya kuagizakutoka kwa bs4 agiza BeautifulSoupkuagiza sqlite3 Unganisha kwenye hifadhidata ya SQLite au unda moja ikiwa haipoconn sqlite3.connectjobs.dbc conn.cursor Unda jedwali la kuhifadhi orodha za kazic.executeTENGENEZA JEDWALI IKIWA HAIPO kazini id UFUNGUO MSINGI WA INTEGER, kichwa TEXT, kampuni TEXT, eneo TEXT, Nakala ya mshahara, muhtasari TEXTVigezo vilivyoainishwa na mtumiajisearch_query inputIngiza hoja yako ya kutafuta kazi: location inputIngiza eneo la kazi unalotaka: salary_range inputIngiza safu ya mishahara inayotaka k.m., 50000-70000: Futa orodha za kazi kutoka kwa Kweliurl f requests.geturlsupu BeautifulSoupresponse.text, html.parserjob_listings supu.find_alldiv, class_jobsearch-SerpJobCardkwa kuorodheshwa katika orodha_ya kazi: jaribu: title listing.finda, class_jobtitle.text.strip isipokuwa AttributeError: title Hakuna jaribu: company listing.findspan, class_company.text.strip isipokuwa AttributeError: kampuni Hakuna jaribu: location listing.finddiv, class_recJobLocdata-rc-loc isipokuwa AttributeError: eneo Hakuna jaribu: mshahara listing.findspan, class_salaryText.text.strip isipokuwa AttributeError: mshahara Hakuna jaribu: muhtasari listing.finddiv, class_summary.text.strip isipokuwa AttributeError: muhtasari Hakuna Chuja uorodheshaji wa kazi kulingana na vigezo vilivyoainishwa na mtumiaji ikiwa safu_ya_mshahara: min_salary, max_salary ramaniint, salary_range.split- ikiwa sio mshahara au sio yoyote char.isdigit kwa char katika mshahara: endelea salary_num int.joinfilterstr.isdigit, salary ikiwa nambari_ya_mshahara min_salary au salary_num max_salary: endelea Ingiza orodha za kazi zilizochujwa kwenye hifadhidata ya SQLite c. kutekelezaINGIZA KATIKA kazi cheo, kampuni, eneo, mshahara, muhtasari THAMANI ?, ?, ?, ?, ?, cheo, kampuni, eneo, mshahara, muhtasari Fanya mabadiliko na funga unganisho kwenye hifadhidataconn.commitconn.closeprintOrodha za kazi zimefutwa na kuhifadhiwa kwenye hifadhidata ya jobs.db SQLite.Hati hii itakuhimiza kuingiza hoja yako ya utafutaji, eneo unalotaka, na safu ya mshahara. Kisha itafuta orodha za kazi kutoka Indeed.com zinazolingana na vigezo vyako na kuzihifadhi katika hifadhidata ya SQLite inayoitwa jobs.db.Tafadhali kumbuka kuwa uchakachuaji kwenye wavuti unaweza kukiuka sheria na masharti ya tovuti fulani, kwa hivyo tumia msimbo huu kwa kuwajibika na uhakikishe kuwa umeangalia sera ya tovuti kabla ya kuitumia. 