Извлечение тезисов из https://ash.confex.com/ash/2019/webprogram/start.html с использованием селена в питоне - PullRequest
0 голосов
/ 07 ноября 2019

Я пытаюсь извлечь все тело из каждого реферата из https://ash.confex.com/ash/2019/webprogram/start.html. У меня есть 100 ключей, таких как адоптивная клеточная иммунотерапия, адоптивная клеточная терапия, аллогенные, аутологичные, искусственные T-клеточные рецепторы, BCMA, TACI, CD123,CD19, CD20 и сохраните в Excel.

Я использовал селен, чтобы ввести один ключ, но мне нужно использовать все ключи, которые у меня есть, один за другим, а затем перейти к каждому реферату и собрать заголовок, автора, принадлежность,дата, фон, метод, результат, заключение и сохранение в Excel.

    import webbrowser
import os
import requests
from bs4 import BeautifulSoup
import sys
import wget
import pandas as pd
import time
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By

driver = webdriver.Chrome('D:\\crome drive\\chromedriver.exe')
driver.get('https://ash.confex.com/ash/2019/webprogram/start.html')
searchterm = driver.find_element_by_id("words").send_keys("CAR-T")
driver.find_element_by_name("submit").click()
#driver.find_element_by_tag_name("resulttitle")
#driver.find_element_by_class_name("a")

soup_level1=BeautifulSoup(driver.page_source, 'lxml')
#fl=soup_level1.find_all(class_='soup_level1')
results = soup_level1.find_all('div', attrs={'class':'resulttitle'})
#links = [x.get_attribute('href') for x in driver.find_elements_by_link_text('View Abstract')]
#htmls = []
#src = driver.page_source  # gets the html source of the page
parser = BeautifulSoup(src)
mn=[]
list_of_attributes = {"class": "resulttitle"}  # A list of attributes that you want to check in a tag
tag = results.find('a', attrs='href')

for ls in tag:
    for s in range(0,len(ls.contents)):
        try:
            if 'Session' in ls.contents[s].attrs['href']:
                mn.append('https://ash.confex.com/ash/2019/webprogram/'+ls.contents[s].attrs['href'])
        except:
            pass


# response = requests.post('https://ash.confex.com/ash/2017/webprogram/Session11552.html')
# soup = BeautifulSoup(response.text)
#
# list_of_attributes = {"class": "cricon"}  # A list of attributes that you want to check in a tag
# tag1 = soup.findAll('div', attrs=list_of_attributes)

dt=pd.DataFrame()
dt['Main Links']=mn
dt.to_excel('D:\Ash 2019\Ash_Main_links2.xlsx')

Я получаю пустой результат

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...