# coding = utf-8 from bs4 import BeautifulSoup import requests headers = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.101 Safari/537.36'} url = "https://jbk.39.net/mxyy/jbzs/" r = requests.get(url, headers = headers) html = r.content.decode('utf-8', 'ignore') my_page = BeautifulSoup(html, 'lxml') for tag in my_page.find_all('div', class_='disease'): disease = tag.find('h1').get_text() disease_name = disease for tag in my_page.find_all('p', class_='introduction'): introduction = tag.get_text() disease_introduction = introduction for tag in my_page.find_all('div', class_='list_left'): sub_tag = tag.find('ul',class_="disease_basic") my_span = sub_tag.findAll('span') #my_span is a list is_yibao = my_span[1].text #是否医保 othername = my_span[3].text #别名 fbbw = my_span[5].text #发病部位 is_infect = my_span[7].text #传染性 dfrq = my_span[9].text #多发人群 my_a = sub_tag.findAll('a') xgzz = my_a[2].text+' '+my_a[3].text+' '+my_a[4].text #相关症状 #ps: .contents[0] or .get_text() is also accepted # Some tests: # print(html) # print(my_page) # print(sub_tag) # print(xgzz) # print(my_span) # print(my_span[1])
时间: 2024-04-07 14:28:53 浏览: 170
AAC-ISO-13818-7(2014).pdf
这段 Python 代码使用 requests 库和 BeautifulSoup 库从 https://jbk.39.net/mxyy/jbzs/ 网站上爬取了一些疾病的基本信息,并将这些信息输出到了控制台上。
具体来说,这段代码首先使用 requests 库发送了一个 GET 请求获取网页的 HTML 内容,然后使用 BeautifulSoup 库解析 HTML 内容,提取出所需的信息。
for 循环中,使用 find_all() 方法找到了 HTML 中所有 class 属性为 disease 的 div 标签,然后从中提取出疾病名称。
接着,使用 find_all() 方法找到了所有 class 属性为 introduction 的 p 标签,从中提取出疾病简介。
再次使用 find_all() 方法找到了所有 class 属性为 list_left 的 div 标签,从中提取出疾病的详细信息,如是否医保、别名、发病部位、传染性、多发人群、相关症状等。
最后,输出了这些信息到控制台上。
需要注意的是,这段代码中的网站可能有反爬虫机制,如果频繁地发送请求可能会被封 IP。因此,在实际使用中需要注意尊重网站的规定,避免频繁发送请求。
阅读全文