9

私のアプリは自分のウェブサイトから (html) ファイルを読み取り、Google アナリティクスを使用してそのファイルへのアクセスを追跡したいと考えています。ファイルの読み取り時に GA Javascript が実行されないため、追跡されません。コードから直接 GA をトリガーする方法、または依存関係を追加せずに .NET アプリから Javascript を実行する方法はありますか?

4

6 に答える 6

5

最近、コードを使用して Google アナリティクスでページ ビューをネイティブに記録できる .net ライブラリをリリースしました。GNU の下でオープン ソースとしてリリースされているため、必要なのは適切な帰属だけです。

ここでライブラリを入手できます: http://www.diaryofaninja.com/projects/details/ga-dot-net

API の使用例:

GooglePageView pageView = new GooglePageView("My page title",
                                "www.mydomain.com",
                                "/my-page-url.html");
TrackingRequest request = new RequestFactory().BuildRequest(pageView);
GoogleTracking.FireTrackingEvent(request);

また、ページにトラッキング ピクセルを含めるだけでトラッキング イベントを発生させる組み込みの HTTP ハンドラもあります。

<img src="/tracker.asmx?domain=mydomain.com&pagetitle=My%20Page%20Title&url=/my-page.aspx" />

または、jquery を使用して、Google アナリティクス (zip、jpg など) を使用してページ内のリンクを追跡することもできます。

http://www.diaryofaninja.com/blog/2009/09/17/random-file-zip-and-pdf-tracking-using-jquery-amp-google-analytics

于 2010-07-05T12:26:57.163 に答える
3
private void analyticsmethod4(string trackingId, string pagename)
{
    Random rnd = new Random();

    long timestampFirstRun, timestampLastRun, timestampCurrentRun, numberOfRuns;

    // Get the first run time
    timestampFirstRun = DateTime.Now.Ticks;
    timestampLastRun = DateTime.Now.Ticks-5;
    timestampCurrentRun = 45;
    numberOfRuns = 2;

    // Some values we need
    string domainHash = "123456789"; // This can be calcualted for your domain online
    int uniqueVisitorId = rnd.Next(100000000, 999999999); // Random
    string source = "Shop";
    string medium = "medium123";
    string sessionNumber = "1";
    string campaignNumber = "1";
    string culture = Thread.CurrentThread.CurrentCulture.Name;
    string screenRes = Screen.PrimaryScreen.Bounds.Width + "x" + Screen.PrimaryScreen.Bounds.Height;


    string statsRequest = "http://www.google-analytics.com/__utm.gif" +
        "?utmwv=4.6.5" +
        "&utmn=" + rnd.Next(100000000, 999999999) +
    //  "&utmhn=hostname.mydomain.com" +
        "&utmcs=-" +
        "&utmsr=" + screenRes +
        "&utmsc=-" +
        "&utmul=" + culture +
        "&utmje=-" +
        "&utmfl=-" +
        "&utmdt=" + pagename +
        "&utmhid=1943799692" +
        "&utmr=0" +
        "&utmp=" + pagename +
        "&utmac=" +trackingId+ // Account number
        "&utmcc=" +
            "__utma%3D" + domainHash + "." + uniqueVisitorId + "." + timestampFirstRun + "." + timestampLastRun + "." + timestampCurrentRun + "." + numberOfRuns +
            "%3B%2B__utmz%3D" + domainHash + "." + timestampCurrentRun + "." + sessionNumber + "." + campaignNumber + ".utmcsr%3D" + source + "%7Cutmccn%3D(" + medium + ")%7Cutmcmd%3D" + medium + "%7Cutmcct%3D%2Fd31AaOM%3B";


    using (var client = new WebClient())
    {
        client.DownloadData(statsRequest);
        //Stream data = client.OpenRead(statsRequest);
        //StreamReader reader = new StreamReader(data);
        //string s = reader.ReadToEnd();
    }

}

これを参照してください - http://tilr.blogspot.com/2012/10/google-analytics-use-google-analytics.html

于 2012-10-15T04:25:49.320 に答える
2

Google アナリティクスは、カスタム アクション、イベント、または処理するものを追跡する 2 つの方法を提供します。あなたの場合、簡単な解決策は、アプリケーションが読み込む HTML ファイルの仮想ページビューを生成することです。適切なJavaScript 関数を呼び出します。

pageTracker._trackPageview("/Foo.html");

このようにして、 Foo.htmlが処理されるたびに、アプリケーションへの通常のクエリと同じようにページビューが生成されます。

これらのFoo.htmlを通常のページビューと区別したい場合は、GA にEvent Trackingという優れた機能があるので、こちらを参照してください。

于 2009-04-30T09:54:04.670 に答える
1

最終的に WebBrowser コンポーネントを使用して .html ファイルをロードし、それによって GA トラッカーをトリガーしました。WebBrowser コンポーネントは、埋め込まれた JavaScript を実行します。

using (WebBrowser wb = new WebBrowser())
{
    wb.Url = new Uri(@"mytrackingpage.html");
    while (wb.ReadyState != WebBrowserReadyState.Complete)
    {
        Application.DoEvents();
    }
} 

あとは、エラー処理を追加し、醜い DoEvents を取り除き、WebBrowser を別のスレッドに移動するだけです。

于 2009-04-30T21:14:18.233 に答える
0

Google には、Analytics を含むさまざまな Google API にアクセスするためのいくつかの異なる言語用のライブラリ (アルファ版) があります。 https://developers.google.com/api-client-library/dotnet/apis/analytics/v3

また、これを使用するときに遵守する必要があるプライバシー ポリシーにも注意してください: https://developers.google.com/analytics/devguides/collection/protocol/policy

于 2014-03-20T23:00:14.103 に答える