2016-04-25 10 views
1

「仕事のタイトル」内のテキストと「要約」クラス内のテキストを抽出します。同じクラス名のものがたくさんあります。だから私は最初の仕事のタイトルとそれの要約をしたい。そして、次の仕事のタイトルとそれの要約。その順序で。jsoupを使用して注文書にテキストを抽出する

次のコードが機能します。しかし、最初にすべてのタイトルを与えてから、すべてのテキストをすべてのサマリークラスに入れます。私は最初の仕事のタイトルと最初の要約が欲しい。次に、2番目の仕事のタイトルと2番目の要約など。このコードを変更するにはどうすればよいですか?助けてください。その後、タイトルを超える

<div class=" row result" id="p_64c5268586001bd2" data-jk="64c5268586001bd2" itemscope="" itemtype="http://schema.org/JobPosting" data-tn-component="organicJob"> 
<h2 id="jl_64c5268586001bd2" class="jobtitle"> 
<a rel="nofollow" href="/rc/clk?jk=64c5268586001bd2" target="_blank" onmousedown="return rclk(this,jobmap[0],0);" onclick="return rclk(this,jobmap[0],true,0);" itemprop="title" title="Fashion Assistant" class="turnstileLink" data-tn-element="jobTitle"><b>Fashion</b> Assistant</a> 
</h2> 
<span class="company" itemprop="hiringOrganization" itemtype="http://schema.org/Organization"> 
    <span itemprop="name"> 
    <a href="/cmp/Itv?from=SERP&amp;campaignid=serp-linkcompanyname&amp;fromjk=64c5268586001bd2&amp;jcid=3bf3e8a57da58ff5" target="_blank"> 
ITV Jobs</a></span> 
    </span> 

    <a data-tn-element="reviewStars" data-tn-variant="cmplinktst2" class="turnstileLink " href="/cmp/Itv/reviews?jcid=3bf3e8a57da58ff5" title="Itv Jobs reviews" onmousedown="this.href = appendParamsOnce(this.href, '?campaignid=cmplinktst2&amp;from=SERP&amp;jt=Fashion+Assistant&amp;fromjk=64c5268586001bd2');" target="_blank"> 
    <span class="ratings"><span class="rating" style="width:49.5px;"><!-- ->  </span></span><span class="slNoUnderline">28 reviews</span></a> 
<span itemprop="jobLocation" itemscope="" itemtype="http://schema.org/Place">  <span class="location" itemprop="address" itemscope="" itemtype="http://schema.org/Postaladdress"><span itemprop="addressLocality">London</span></span></span> 
<table cellpadding="0" cellspacing="0" border="0"> 
<tbody><tr> 
<td class="snip"> 
<div> 
<span class="summary" itemprop="description"> 
    Do you have a passion for <b>Fashion</b>? You will be responsible for  running our <b>fashion</b> cupboard, managing a team of interns and liaising with press officers to...</span> 
    </div> 

doc = Jsoup.connect("http://www.indeed.co.uk/jobs?q=fashion&l=England").timeout(5000).get(); 
Elements f = doc.select(".jobtitle"); 
Elements e = doc.select(".summary"); 
System.out.println("Title: " + f.text()); 
System.out.println("Details: "+ e.text()); 

答えて

1

反復処理し、各タイトルの概要を見つける:

for (Element title : doc.select(".jobtitle")) { 
    Element summary = title.parent().select(".summary").first(); 

    System.out.format("Title: %s. Summary: %s%n", title.text(), summary.text()); 
} 
+0

ありがとう –

0

Elements.eq(インデックス) を使用し、それがArrayList.getに似ています(int型)を使用して要素を取得します。

関連する問題