我使用以下代码抓取页面:
<br/>
<td class="PropertyBody">
<b>Category:</b>
Miscellanea: Soft Skill
<br>
<b>Owner:</b>
<a href="mailto:">blabla</a>
<br>
<b>Location:</b>
bla bla
<br>
<b>Duration:</b>
6:00
<br>
<b>Max attendees:</b>
15
<br>
<b>Start at:</b>
7/19/2012 10:00:00 AM
<br>
<b>Your status:</b>
<br>
</td>
例如,如何'7/19/2012 10:00:00 AM'
使用 Symfony Crawler 从这段代码中提取?
$crawler->filter('.PropertyBody > b')->eq(5)->text();
就拿'Start at:'
谢谢,我已经做到了:
$bigPiece = $crawler->filter('.PropertyBody')->text();
//getting CATEGORY
$pos = strpos($bigPiece, ':')+1;
$pos2 = strpos($bigPiece, 'Owner:');
$category = trim(substr($bigPiece, $pos, $pos2-$pos));
$this->category = $category;
//getting OWNER
$pos = strpos($bigPiece, 'Owner:')+6;
$pos2 = strpos($bigPiece, 'Location:');
$owner = trim(substr($bigPiece, $pos, $pos2-$pos));
$training->setOwner($owner);
//getting LOCATION
$pos = strpos($bigPiece, 'Location:')+9;
$pos2 = strpos($bigPiece, 'Duration:');
$location = trim(substr($bigPiece, $pos, $pos2-$pos));
$training->setLocation($location);
//getting DURATION
$pos = strpos($bigPiece, 'Duration:')+9;
$pos2 = strpos($bigPiece, 'Max attendees:');
$duration = trim(substr($bigPiece, $pos, $pos2-$pos));
$training->setDuration($duration);
//getting MAXATTENDEES
$pos = strpos($bigPiece, 'Max attendees:')+14;
$pos2 = strpos($bigPiece, 'Start at:');
$maxattendees = trim(substr($bigPiece, $pos, $pos2-$pos));
$training->setMaxattendies($maxattendees);
//getting START AT
$pos = strpos($bigPiece, 'Start at:')+9;
$pos2 = strpos($bigPiece, 'Your status:');
$start = trim(substr($bigPiece, $pos, $pos2-$pos));
$training->setStarts($start);