【发布时间】:2021-10-12 14:44:11
【问题描述】:
我的代码访问一个页面,其中每一行可能有也可能没有下拉菜单,其中包含更多信息。
我有一个 try 和 except 语句来检查这个。
在第 1 行工作正常,但在第 2 行不行?
import requests
from bs4 import BeautifulSoup as bs
import re
import pandas as pd
gg=[]
r = requests.get('https://library.iaslc.org/conference-program?product_id=24&author=&category=&date=&session_type=&session=&presentation=&keyword=&available=&cme=&page=2')
soup = bs(r.text, 'lxml')
sessions = soup.select('#accordin > ul > li')
for session in sessions:
jj=(session.select_one('h4').text)
print(jj)
sub_session = session.select('.sub_accordin_presentation')
try:
if sub_session:
kk=([re.sub(r'[\n\s]+', ' ', i.text) for i in sub_session])
print(kk)
except:
kk=' '
dict={"Title":jj,"Sub":kk}
gg.append(dict)
df=pd.DataFrame(gg)
df.to_csv('test2.csv')
【问题讨论】:
标签: web-scraping beautifulsoup request css-selectors re