Python のデータクロール、分析、マイニング、機械学習、Python 分散コンピューティングに関するコンテンツ共有

Python のデータクロール、分析、マイニング、機械学習、Python 分散コンピューティングに関するコンテンツ共有

01 データキャプチャ

1. 背景調査

1) robots.txt をチェックして、サイトのクロールにどのような制限があるのか​​を確認します。

2) pip installbuiltwith; pip python-whois をインストールします

2. データキャプチャ:

1) 動的に読み込まれるコンテンツ:

セレンの使用

  1. #!/usr/bin/env python
  2. # -*- コーディング: utf-8 -*-
  3. セレンからWebDriverをインポート
  4. selenium.webdriver.common.keysからKeys をインポートします
  5. インポート時間 
  6. インポートシステム
  7. リロード(sys)
  8. sys.setdefaultencoding( 'utf8' )
  9. ドライバー = webdriver.Chrome( "/Users/didi/Downloads/chromedriver" ) driver.get( 'http://xxx' )
  10. elem_account = driver.find_element_by_name( "ユーザー名" )
  11. elem_password = driver.find_element_by_name( "パスワード" )
  12. elem_code = driver.find_element_by_name( "検証コード" ) elem_account.clear()
  13. elem_password.clear()
  14. 要素コード.クリア()
  15. elem_account.send_keys( "ユーザー名" )
  16. elem_password.send_keys( "pass" )
  17. elem_code.send_keys( "abcd" )
  18. 時間.睡眠(10)
  19. driver.find_element_by_id( "btnSubmit" ).submit()
  20. time .sleep(5) driver.find_element_by_class_name( "txtKeyword" ).send_keys(u "x" ) #検索をシミュレート driver.find_element_by_class_name( "btnSerch" ).click()
  21. # ...処理を省略
  22. dw = driver.find_elements_by_xpath( '//li[@class="min"]/dl/dt/a' )
  23. dw内のアイテムの場合:
  24. url = item.get_attribute( 'href' )
  25. URLの場合:
  26. ulist.append(URL) を追加します。
  27. print(url + "---" + str(pnum))
  28. print( "####################" )

2) 静的に読み込まれたコンテンツ

(1)規則性

(2)lxml;

(3)bs4

  1. #!/usr/bin/env python
  2. # -*- コーディング: utf-8 -*-
  3. string = r 'src="(http://imgsrc\.baidu\.com.+?\.jpg)" pic_ext="jpeg"' # 正規表現 string urls = re.findall(string, html)
  4. 輸入リクエスト
  5. lxmlからetreeをインポート
  6. urllibをインポートする
  7. レスポンス = リクエスト.get(url)
  8. html = etree.HTML(requests.get(url).content)
  9. res = html.xpath( '//div[@class="d_post_content j_d_post_content "]/img[@class="BDE_Image"]/@src' ) # lxml
  10. 輸入リクエスト
  11. bs4からBeautifulSoupをインポート
  12. soup = BeautifulSoup(response.text, 'lxml' ) # レスポンスを解析し、BeautifulSoup オブジェクトを作成します urls = soup.find_all( 'img' , 'BDE_Image' )

3): アンチクライムとアンチアンチクライム

(1)リクエスト頻度

(2)リクエストヘッダー

(3)IPプロキシ

4): クローラーフレームワーク:

(1):スクレイピー

(2)ポーシャ

02 データ分析

1. よく使われるデータ分析ライブラリ:

NumPy: ベクトル化された演算に基づいています。 http://www.numpy.org/

1) リスト => マトリックス

2) ndim: 次元;形状: 行と列の数。サイズ: 要素の数

Scipy: NumPy の拡張版で、高度な数学、信号処理、統計などをカバーしています。https://www.scipy.org/

Pandas: Series や DataFrame などの高度なデータ構造を迅速に構築するための NumPy ベースのパッケージ。パンダス

1): NumPy は List に似ており、Pandas は Dict に似ています。

Matplotlib: プロットライブラリ。

1): 強力な描画ツールです。

2): 散布図、折れ線グラフ、棒グラフなどをサポートします。

簡単な例:

  1. pip2 Numpy をインストール
  2. >>> numpyをnpとしてインポートします
  3. >>> a = np.arange(10)
  4. >>> は
  5. 配列([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
  6. >>> ** 2
  7. 配列([0, 1, 4, 9, 16, 25, 36, 49, 64, 81])
  8. pip2 scipy をインストール
  9. >>> numpyをnpとしてインポートします
  10. >>> scipyからlinalgをインポート
  11. >>> a = np.array([[1, 2], [3, 4]])
  12. >>> linalg.det(a)
  13. -2.0
  14. pip2 パンダをインストールする
  15. >>> df = pd.DataFrame({ 'A' : pd.date_range( "20170802" , periods=5), 'B' : pd.Series([11, 22, 33, 44,
  16. 55])、 'C' : pd.Categorical([ "t" , "a" , "b" , "c" , "g" ])})
  17. >>> df
  18. ABC 0 2017-08-02 11 t 1 2017-08-03 22 a 2 2017-08-04 33 b 3 2017-08-05 44 c 4 2017-08-06 55 g
  19. pip2 Matplotlib をインストールする
  20. >>> matplotlib.pyplot をpltとしてインポートします
  21. >>> plt.plot([1, 2, 3])
  22. [<0x113f88f50matplotlib.lines.Line2D オブジェクト>]
  23. >>> plt.ylabel( "ディディ" )
  24. <0x110b21c10matplotlib.text.Text オブジェクト>
  25. >>> plt.show()

2. 高度なデータ分析ライブラリ:

scikit-learn: 機械学習フレームワーク。

グラフは、データが 50 未満であることを示しています。いいえ: さらにデータが必要です。はい: 分類器を使用して続行します。

図から、分類、回帰、クラスタリング、次元削減の 4 種類のアルゴリズムがあることがわかります。

KNN:

  1. #!/usr/ローカル/bin/python
  2. # -*- コーディング: utf-8 -*-
  3. '' '
  4. アイリスの予測 https://en.wikipedia.org/wiki/Iris_flower_data_set '' '
  5. # モジュールをインポートする
  6. __future__からprint_function をインポートする
  7. sklearnからデータセットをインポートする
  8. sklearn.model_selectionからtrain_test_split をインポートします
  9. sklearn.neighborsからKNeighborsClassifier をインポートします
  10. # データを作成する
  11. アイリス = datasets.load_iris()
  12. iris_X = iris.data # 萼片の長さと幅、花弁の長さと幅
  13. iris_y = iris.target # 花の種類 0, 1, 2
  14. 印刷(iris_X)
  15. 印刷(iris_y)
  16. iris.target_names を印刷します
  17. #モデルトレーニングとモデル予測を定義する
  18. X_train, X_test, y_train, y_test = train_test_split(iris_X, iris_y, test_size = 0.1) # トレーニングデータ 10% knn = KNeighborsClassifier() # KNN最近傍分類器を作成
  19. knn.fit(X_train, y_train) # トレーニングデータ
  20. predicts = knn.predict(X_test) # 予測結果を取得する
  21. # 結果を比較する
  22. print( "##########################" )
  23. 印刷(X_test)
  24. 印刷(予測)
  25. 印刷(y_test)
  26. # 予測精度を計算する
  27. print(knn.score(X_test, y_test))
  28. [[ 5. 3.3 1.4 0.2]
  29. [ 5. 3.5 1.3 0.3 ]
  30. [ 6.7 3.1 5.6 2.4 ]
  31. [ 5.8 2.7 3.9 1.2 ]
  32. [6.2.2 5.1.5]
  33. [6.3.4.81.8]
  34. [6.3 2.5 5. 1.9]
  35. [ 5. 3.6 1.4 0.2 ]
  36. [ 5.6 2.9 3.6 1.3 ]
  37. [ 6.9 3.2 5.7 2.3 ]
  38. [ 4.9 3. 1.4 0.2 ]
  39. [ 5.9 3. 4.2 1.5]
  40. [ 4.8 3. 1.4 0.1 ]
  41. [ 5.1 3.4 1.5 0.2 ]
  42. [ 4.7 3.2 1.6 0.2 ]]
  43. [0 0 2 1 1 2 2 0 1 2 0 1 0 0 0]
  44. [0 0 2 1 2 2 2 0 1 2 0 1 0 0 0]
  45. 0.933333333333

線形回帰

  1. #!/usr/ local /bin/python # -*- コーディング: utf-8 -*- '' '
  2. ボストンの住宅価格動向
  3. '' '
  4. # モジュールをインポートする
  5. __future__からprint_function をインポートする
  6. sklearnからデータセットをインポートする
  7. sklearn.linear_modelからLinearRegression をインポートします
  8. matplotlib.pyplot をpltとしてインポートします。
  9. # データを作成する
  10. loaded_data = datasets.load_boston() #ボストンの住宅価格
  11. data_X = ロードされたデータ.データ
  12. data_y = ロードされたデータ.ターゲット
  13. 印刷(データ_X)
  14. 印刷(データy)
  15. #モデルトレーニングとモデル予測を定義する
  16. model = LinearRegression() # 線形回帰
  17. model.fit(data_X, data_y) # トレーニングデータ
  18. print(model.predict(data_X[:4, :])) # 予測結果を取得する
  19. 印刷(データy[:4])
  20. # 結果
  21. print( "##########################" )
  22. X, y = datasets.make_regression(n_samples=100, n_features=1, noise=10) # 回帰モデルデータのサンプルを100個生成、サンプルごとに1つの特徴、ガウスノイズ
  23. plt.scatter(X, y) # 散布図
  24. plt.show()

03 データマイニング

1. キーワードのマイニング:

関連するアルゴリズム: TF-IDF

参考: http://www.ruanyifeng.com/blog/2013/03/tf-idf.html

ニュース.txt:

滴滴出行とヨーロッパとアフリカの大手モビリティ企業であるTaxifyは、地域間の交通技術革新を支援するための戦略的提携を締結した。

2017-08-01 滴滴出行 [2017年8月1日、中国・北京/エストニア・タリン] 滴滴出行は本日、欧州とアフリカの大手モバイル旅行会社であるTaxifyと戦略的提携を結んだことを発表しました。 Didiは、インテリジェント輸送技術の研究開発への投資と協力を通じて、Taxifyが複数の市場でより深い市場拡大と技術革新を行うことを支援します。 Didi Chuxing は世界をリードするモバイル旅行プラットフォームです。 Didiは人工知能技術を活用し、タクシー、自家用車、高速車、高級車、ライドシェアサービスなど多様な旅行サービスを400以上の都市の4億人を超えるユーザーに提供しています。 Didi は、1,700 万人以上のドライバーに柔軟な雇用と収入の機会を提供すると同時に、人工知能技術を使用して、都市管理者が統合された持続可能なスマート輸送ソリューションを構築できるようにサポートしています。 2013 年にエストニアで設立された Taxify は、ヨーロッパとアフリカで最も急速に成長しているモバイル旅行会社です。現在、同社のタクシーおよびプライベートカーシェアリング旅行サービスネットワークは、ヨーロッパ、アフリカ、西アジアの中心都市をカバーしています。ハンガリー、ルーマニア、ポーランド、バルト三国、南アフリカ、ナイジェリア、ケニアを含む18か国に広がり、250万人以上のユーザーが利用しています。 Didi Chuxingの創設者兼CEOであるチェン・ウェイ氏は次のように語った。「Taxifyは、さまざまな市場で高品質で革新的な旅行サービスを提供しています。私たちは、モバイルインターネット技術の力を活用して、急速に進化する消費者のニーズに応え、従来の輸送業界の変革とアップグレードを支援することに尽力しています。この提携は、アジア、ヨーロッパ、アフリカの市場間の地域間スマート輸送リンクの構築に貢献すると信じています。」

Taxifyの創設者兼CEOであるマーカス・ビリグ氏は次のように述べた。「Taxifyはこの戦略的提携を活用して、欧州とアフリカの主要市場における主導的地位を強化していきます。Didiは、当社が欧州とアフリカで最高かつ最も効率的な旅行オプションとなるための理想的なパートナーだと信じています。」

  1. #!/usr/ local /bin/python # -*- コーディング: utf-8 -*- '' '
  2. 記事のキーワードを分析する
  3. '' '
  4. インポートOS
  5. コーデックをインポートする
  6. パンダをインポートする
  7. 輸入業者
  8. jieba.analyse をインポートする
  9. # データフォーマットのフォーマット
  10. tagDF = pandas.DataFrame(columns=[ 'filePath' , 'content' , 'tag1' , 'tag2' , 'tag3' , 'tag4' , 'tag5' ]) 試してください:
  11.   open ( './houhuiyang/news.txt' , 'r' ) as f: #コーパスを読み込む content = f.read ( ).strip()
  12. タグ = jieba.analyse.extract_tags(コンテンツ、topK=5) #TF_IDF
  13. tagDF.loc[len(tagDF)] = [ "./news.txt" , コンテンツ, タグ[0], タグ[1], タグ[2], タグ[3], タグ[4]]
  14. 印刷(タグDF)
  15. except例外、例:
  16. 印刷(例)

記事の上位5つのキーワードを計算します:旅行、Didi、Taxify、ヨーロッパとアフリカ、交通

2. 感情分析

感情的な言語情報: http://www.keenage.com/html/c_bulletin_2007.htm

1) 最も簡単な方法は感情辞書に基づいています。

2) より複雑なものは機械学習手法に基づいています。

  1. pip2 インストール nltk
  2.  
  3. >>> nltk をインポートする
  4.  
  5. >>> from nltk.corpus import stopwords #ストップワード >>> nltk.download() # コーパスをインストール
  6.  
  7. >>> t = 「Didiは旅行会社です」  
  8.  
  9. >>> word_list = nltk.word_tokenize(t)
  10.  
  11. >>> フィルタリングされた単語 = [ word_list内の単語単語ごとに、   stopwords.words ( 'english' )] [ 'Didi' 'travel' 'company' ]
  12.  
  13. >>> nltk.download( 'stopwords' ) #ストップワードをダウンロード

中国語と英語のNLP単語分割の違い

1): ヒューリスティック

2): 機械学習/統計手法: HMM、CRF

処理フロー: raw_text -> tokenize[pos tag] -> lemma / stemming[pos tag] -> stopwords -> word_list

04 Python分散コンピューティング

  1. pip2 mrjjob をインストール
  2.  
  3. pip2 pyspark をインストールする

1) Python マルチスレッド

2) Python マルチプロセッシング

3) グローバルインタープリタロックGIL

4) プロセス間通信キュー

5) プロセスプールプール;

6) Python の高階関数

  1. マップ/リデュース/フィルター

7) Linux パイプラインに基づく MapReducer [cat word.log | Python マッパー.py | Python リデューサー.py |ソート -k 2r]

単語.log

北京 成都 上海 北京 山西省 天津 広州

  1. #!/usr/ローカル/bin/python
  2.  
  3. # -*- コーディング: utf-8 -*-
  4.  
  5. '' '
  6.  
  7. マッパー
  8.  
  9. '' '
  10.  
  11. インポートシステム
  12.  
  13. 試す:
  14.  
  15. sys.stdin内のの場合:
  16.  
  17. 行 = 行.分割()
  18.  
  19. 行内単語:
  20.  
  21. len(word.strip()) == 0の場合:
  22.  
  23. 続く 
  24.  
  25. count = "%s,%d" % (単語、1)
  26.  
  27. print(カウント)
  28.  
  29. IOErrorを除く、例:
  30.  
  31. 印刷(例)
  32.  
  33. #!/usr/ローカル/bin/python
  34.  
  35. # -*- コーディング: utf-8 -*-
  36.  
  37. '' '
  38.  
  39. 減速機
  40.  
  41. '' '
  42.  
  43. インポートシステム
  44.  
  45. 試す:
  46.  
  47. 単語辞書 = {}
  48.  
  49. sys.stdin内のの場合:
  50.  
  51. 行 = 行.分割( ", " )
  52.  
  53. len(行) != 2の場合:
  54.  
  55. 続く 
  56.  
  57. word_dict.setdefault(行[0], 0)
  58.  
  59. word_dict[行[0]] += int (行[1])
  60.  
  61. のために  word_dict.items()キー、値:
  62.  
  63. stat = "%s %d" % (キー, 値 )
  64.  
  65. 印刷(統計)
  66.  
  67. IOErrorを除く、例:
  68.  
  69. 印刷(例)

05 ニューラルネットワーク

CPU/GPUバージョンがある

1) テンソルフローで構築されたニューラルネットワークは静的である

2) Pytorch http://pytorch.org/#pip-install-pytorch 構築されたニューラル ネットワークは動的です [Troch は Lua で書かれていますが、これは Python バージョンです]

簡単に言えば、データは次のようになります。

スカラーは、1、2、3 など、大きさのみを持ち方向を持たない量です。

ベクトルは大きさと方向を持つ量であり、実際には(1,2)のような数字の列である。

行列は、[1,2;3,4]のように、複数のベクトルを一列に結合して形成される一連の数値です。

テンソルは、任意の次元に配置された一連の数値の一般化です。図に示すように、行列は 3 次元テンソルの単なる 2 次元スライスです。 3 次元テンソルの下のスカラーを見つけるには、その位置を特定するための 3 次元座標が必要です。

TensorFlow pytorch は、テンソル データ構造を使用してすべてのデータを表します。

  1. #-*- コーディング: UTF-8 -*-
  2. #著者 houhuiyang
  3. 輸入トーチ
  4. numpyをnpとしてインポートする
  5. torch.autogradから変数をインポート
  6. torch.nn.function をFとしてインポートします。
  7. matplotlib.pyplot をpltとしてインポートします。
  8. np_data = np.arange(6).reshape((2, 3))
  9. torch_data = torch.from_numpy(np_data)
  10. テンソル2np = torch_data.numpy()
  11. 印刷(
  12. "\nnp_data" 、np_data、#matrix
  13. "\ntorch_data" 、torch_data、#テンソル
  14. "\nテンソルからnumpyへ" 、tensor2np
  15. # データ = [-1, -2, 1, 2, 3]
  16. データ = [[1, 2], [3, 4]]
  17. テンソル = torch.FloatTensor(データ)
  18. # abs sin cos 平均 平均値 matmul/mm print(
  19. "\nnumpy" , np.matmul(データ, データ),
  20. "\ntorch" 、 torch.mm(テンソル、テンソル)
  21. # テンソル変数
  22. tensor_v = torch.FloatTensor([[1,2], [3,4]]) variable = Variable(tensor_v, requires_grad= True ) # 中央値を計算
  23. t_out = torch.mean(tensor_v * tensor_v) # x ^ 2 v_out = torch.mean(variable * variable) # バックプロパゲーション print(
  24. テンソルv、
  25. 変数、
  26. t_out、
  27. v_out
  28. v_out.backward() # 逆パス
  29. print(variable.grad) # 勾配
  30. '' '
  31. y = Wx 線形
  32. y =AF(Wx) 非線形 [活性化関数 relu/シグモイド/tanh]
  33. '' '
  34. x = torch.linspace(-5,5,200) # -5から5までの200ポイントを取る
  35. x = 変数(x)
  36. x_np = x.data.numpy()
  37. y_relu = F.relu(x).data.numpy()
  38. y_sigmoid = F.sigmoid(x).data.numpy()
  39. y_tanh = F.tanh(x).data.numpy()
  40. # y_softplus = F.softplus(x).data.numpy() # 確率プロット plt.figure(1, figsize=(8, 6))
  41. # plt.subplot(221) # サブプロットを描画する
  42. plt.plot(x_np, y_relu, c = "red" , label = "relu" ) plt.ylim(-1, 5)
  43. plt.legend(loc = "ベスト" )
  44. plt.show()
  45. # plt.サブプロット(222)
  46. plt.plot(x_np, y_sigmoid, c = "red" , label = "igmoid" )
  47. 線形回帰(-0.2, 1.2)
  48. plt.legend(loc = "ベスト" )
  49. plt.show()
  50. # plt.サブプロット(223)
  51. plt.plot(x_np, y_tanh, c = "red" , label = "subplot" )
  52. plt.ylim(-1.2, 1.2)
  53. plt.legend(loc = "ベスト" )
  54. plt.show()

シンプルなニューラルネットワークの構築

  1. #-*- コーディング: UTF-8 -*- #author オーバーウォッチ
  2. '' '
  3. 戻る
  4. 分類
  5. '' '
  6. 輸入トーチ
  7. torch.autogradから変数をインポート
  8. import torch.nn. functional as F # 活性化関数
  9. matplotlib.pyplot をpltとしてインポートします。
  10. x = torch.unsqueeze(torch.linspace(-1, 1, 100), dim = 1) # 1次元を2次元に圧縮解除 y = x.pow(2) + 0.2 * torch.rand( x.size ())
  11. x, y = 変数(x), 変数(y)
  12. # 印刷(x)
  13. # 印刷(y)
  14. # plt.scatter(x.data.numpy(), y.data.numpy())
  15. # plt.show()
  16. class Net(torch.nn.Module): # torchのモジュールを継承します
  17. def __init__(self, n_features, n_hidden, n_output):
  18. super(Net, self).__init__() # torch __init__ を継承します
  19. self.hidden = torch.nn.Linear(n_features, n_hidden) # 隠れ層の線形出力 self.predict = torch.nn.Linear(n_hidden, n_output) # 出力線形層
  20. def forward (self, x):
  21. x = F.relu(self.hidden(x)) # 活性化関数 x = self.predict(x) # 出力値
  22. xを返す
  23. net = Net(1, 10, 1) # 入力値、隠れ層 10、ニューロン 10、出力値 1 print(net) # 構築されたニューラル ネットワーク構造を出力
  24. plt.ion()
  25. plt.show()
  26. # トレーニングツール
  27. optimizer = torch.optim.SGD(net.parameters(), lr = 0.5) # ネットのすべての値を渡す、lrは学習率 loss_func = torch.nn.MSELoss() # 平均二乗誤差
  28. 印刷(net.parameters())
  29. t範囲(100)場合:
  30. prediction = net(x) #トレーニングデータxをネットに入力し、予測値を出力する loss = loss_func(prediction, y) #2つの間の誤差を計算する
  31. # 逆伝播
  32. オプティマイザ.zero_grad()
  33. 損失.後方()
  34. オプティマイザ.ステップ()
  35. t % 5 == 0の場合:
  36. plt.cla()
  37. plt.scatter(x.data.numpy(), y.data.numpy())
  38. plt.plot(x.data.numpy(), prediction.data.numpy(), "r-" , lw = 5)
  39. plt.text(0.5, 0, '損失=%.4f' % loss.data[0], fontdict={ 'サイズ' : 20, '色' : '赤' })
  40. plt.一時停止(0.1)
  41. plt.ioff()
  42. plt.show()

06 数学 微積分

1. 制限:

無限と無限小の秩序。

2. 微分積分:

派生語:

1) 導関数は曲線の傾きであり、曲線がどれだけ速く変化するかを反映します。

2) 2次導関数は傾きの変化速度を反映し、曲線の凸凹を示します。

テイラー級数近似

ニュートン法と勾配降下法。

3. ジェンセンの不等式:

凸関数;ジェンセンの不等式

確率論:

1. 積分学:

ニュートン・ライプニッツの公式

2. 確率空間

ランダム変数と確率:確率密度関数の積分。条件付き確率;共役分布;

確率分布:

1) 2点分布/ベルヌーイ分布

2) 二項分布

3) ポアソン分布

4) 均一分布

5) 指数分布

6) 正規分布/ガウス分布

3. 大数の法則と中心極限

線形代数:

1) マトリックス

2) 線形回帰

<<:  クラウドサービスは標準になるのでしょうか? 2020年までにワークロードの83%がクラウドで実行される

>>:  JDパブリッククラウド 張思聡: JDクラウドオブジェクトストレージ製品の成長の軌跡

推薦する

テンセントクラウドのローコード開発は、帰省者の急増により伝染病の予防と管理が強化される中、健康コードの迅速なアップグレードに役立ちます。

帰国の波が近づいており、各地の防疫対策もそれに応じて強化される。四川省がこのほど、省統一健康コード「...

SEO トラフィックに影響を与える 3 つの要素: インクルージョン + ランキング + クリックスルー率

以前、Xiwei Qiangwei 氏が紹介した記事「検索トラフィックこそが王様、トラフィックこそが...

3年で分類情報サイトの90%が崩壊:バブルから利益の転換点へ

2010年9月、長年機密情報分野で資金を燃やしてきた姚金波(ウェイボー)は、資本が投げかけた和解に対...

インターネット マーケティング パーチメント: ドメイン名の計画

はじめに: あるネットユーザーが言ったように、年を取るほど、自分は表面的な人間だと感じるようになりま...

ウェブサイトのホームページを最適化する方法

ホームページの最適化の重要性は疑う余地がありません。ホームページの重要性が高いだけでなく、ホームペー...

分類情報ウェブサイトを利用してウェブサイトの重量を改善することについての簡単な説明

ウェブサイト最適化業界には、「内部リンクは王、外部リンクは皇帝」という格言があります。これは、ウェブ...

2013 年に外部リンクを構築するためのウェブサイト SEO の 3 つの魔法の武器

2013年、外部リンクを張っていた医療ウェブサイトは急速に消滅し、降格されたり、直接禁止されたりしま...

ハイブリッドクラウドを安全に統合する方法

IT 意思決定者の 10 人中 9 人が、デジタル ビジネス変革を目指す組織にとってハイブリッド ク...

hostkvm: 香港 cn2 高速 VPS、20% 割引、月額 7.6 ドルから、2G メモリ/1 コア/40gSSD/120G トラフィック

Hostkvm は現在、香港葵湾データセンターで香港 CN2 VPS を推進しています。この VPS...

知らない外部リンクのポイント加算と減点の原則について簡単に説明します

外部リンクは古い話題です。最近、有名な大手ブログでこの話題についてみんなが議論しているのを見たので、...

servarica: カナダの GPU VPS、月額 15 ドル、AMD FirePro s7150/3g メモリ/3 コア/2T ハードディスク/100M 帯域幅無制限トラフィック

10 年間運営されているカナダの企業 Servarica が、新しい製品「GPU VPS」を開発しま...

#黑5# softshellweb: 年間 30 ドルから、1Gbps の帯域幅、台湾 VPS、サンノゼ VPS、オランダ VPS

Softshellweb は、英国に登録されているホスティング プロバイダーとして以前紹介されました...

GoogleとBaiduのもう一つのアイデンティティ:ドメイン名登録業者

この記事を始める前に、まず明確にしておきたいのは、Google は長い間世界トップクラスのドメイン名...

2013年のゴールデンフィンガー: タオバオアフィリエイト

2013 年の SEO 市場において、最も有望な「黄金の指」は Taobao Affiliate で...

itldc-$4.79/512m メモリ/15g SSD/ロサンゼルス/G ポート限定

ITLDC.com は、1991 年から商業的に運営されており、3 つの支店 (ITL Bulgar...