def login_action(account): """ :param account :return: page source response """ soup = get_page(urljoin(nthu_library_url.info_system, '?func=file&file_name=login1')) login_url = soup.find('form').attrs.get('action') resp = post_page(login_url, data=account.to_dict()) return resp
def crawl_lost_objects(data): soup = post_page(nthu_library_url.lost_found_url, data=data) lost_items = list() for item in build_soup(soup).select('table > tr')[1:]: lost_items.append({ 'id': item.select('td:nth-of-type(1)')[0].text, 'time': item.select('td:nth-of-type(2)')[0].text, 'place': item.select('td:nth-of-type(3)')[0].text, 'description': item.select('td:nth-of-type(4)')[0].text, }) return lost_items
def crawl_lost_objects(data): soup = post_page(nthu_library_url.lost_found_url, data=data) lost_items = list() for item in build_soup(soup).select('table > tr')[1:]: r = [s.strip() for s in item.select('td:nth-of-type(4)')[0].text.split('\r\n')] sysid = re.search('\d+', r[1]) lost_items.append({ 'id': item.select('td:nth-of-type(1)')[0].text, 'time': item.select('td:nth-of-type(2)')[0].text, 'place': item.select('td:nth-of-type(3)')[0].text, 'description': r[0], 'system_id': sysid.group() if sysid else None }) return lost_items