J'ai utilisé Jsoup pour gratter le graphique boursier de Yahoo! Finance. À propos, le graphique boursier gratté est Alibaba. La raison pour laquelle j'ai choisi Alibaba est simplement parce que je veux qu'elle grandisse. .. ..
@Controller
public class YahooFinanceController {
	private static final String YAHOO_FINANCE_URL = "https://stocks.finance.yahoo.co.jp/us/detail/BABA";
	
	@RequestMapping("/")
	public String index(Model model) {
        Document YahooDoc = null;
        String imgSrc = null;
        try {
           YahooDoc = Jsoup.connect(YAHOO_FINANCE_URL).get();
           Elements img = YahooDoc.select("div.styleChart img");
           imgSrc = img.attr("src");
        } catch (IOException e) {
            e.printStackTrace();
        }
	    model.addAttribute("imgSrc", imgSrc);
	    return "index";
	}	
}
<body>
	<img th:src="${imgSrc}" title="Cours de l'action Alibaba!" />
</body>
Stocke le HTML spécifié dans l'URL. Le nom de la méthode est connect (). Par exemple, dans ce cas, Document est spécifié comme suit.
Document YahooDoc = Jsoup.connect(YAHOO_FINANCE_URL).get();
Lorsque cela est affiché sur la console, il apportera tout le HTML de la page spécifiée! C'est incroyable.
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html lang="ja"> 
 <head> 
  <title>Alibaba Group Holding [BABA]: Actions/Prix de l'action- Yahoo!la finance</title> 
  <meta charset="utf-8"> 
  <meta name="description" content="Cours de l'action d'Alibaba Group Holding [BABA]. Couvre les cours des actions, les graphiques, les performances, etc. de toutes les actions cotées à la NYSE (New York Stock Exchange) et au NASDAQ. Les actions et les classements japonais ADR sont également importants."> 
  <meta name="keywords" content="Prix de l'action,Dow,Nasduck,Amérique,Classement"> 
...réduction...
  <meta property="og:description" content="Cours de l'action d'Alibaba Group Holding [BABA]. Couvre les cours des actions, les graphiques, les performances, etc. de toutes les actions cotées à la NYSE (New York Stock Exchange) et au NASDAQ. Les actions et les classements japonais ADR sont également importants."> 
  <meta property="og:title" content="Alibaba Group Holding [BABA]: Actions/Prix de l'action- Yahoo!la finance"> 
...Omis ci-dessous
Stocke les éléments de l'objet Document obtenu ci-dessus. Le nom de la méthode est select (). Par exemple, dans ce cas, Element est spécifié comme suit.
Elements img = YahooDoc.select("div.styleChart img");
J'obtiens la balise img dans la classe styleChart de la balise div. Lorsque ceci est affiché sur la console,
<img src="https://chart.yahoo.co.jp/?code=BABA&tm=1d&size=e" alt="Image du graphique">
Vous pouvez obtenir la valeur de l'attribut spécifié par attr () à partir de l'objet Element. Cette fois, l'attribut src de la balise img est stocké dans une variable appelée imgSrc de type String.
String imgSrc = img.attr("src");
Lorsque ceci est affiché sur la console,
https://chart.yahoo.co.jp/?code=BABA&tm=1d&size=e
model.addAttribute("imgSrc", imgSrc);
return "index";
Il s'avère qu'il est étonnamment facile à gratter. c'est tout. Merci d'avoir lu jusqu'au bout.
Site Web de récupération avec jsoup How to parse for image src using JSOUP?my Thymeleaf conditional img src
Recommended Posts