問題
私はたくさんの会社のリストについてたくさんの調査をしています、そして、私は彼らのウェブサイトが何であるかについて知りたいです。企業が買収されたことを示す良い指標は、そのWebサイトが見つからないか、その会社のWebサイトが別の名前の会社を指していることです。
それで、私は会社名のコラムを取り、それらをウェブ検索に提出し、そして最も可能性の高いウェブサイトを取り戻したいです。 不完全な再利用は問題ありませんが、各自を手動で検索するよりもはるかに優れています。
溶液
JMPテーブルの "Companies"という列から始めます。値をリストとして取得してから、リストを検索しながら繰り返します。rの結果を新しいリストに取り込んで、検索が完了したら、Set Valuesを使用して元のテーブルの空の列に値を追加します。
JMPでこれをすべて行うことは可能かもしれませんが、私はその方法を知りませんでした。しかし私は走る方法を知っている
私は彼らの例から始めました、それはいくつかのパッケージを必要とします:beautifulsoup4とgoogle(すなわち、pip install google)。 このコードは検索結果を1つ返します。
(This is Python)
try:
from google import search
except ImportError:
print("No module named 'google' found")
# to search
query = "SAS Institute inc"
for j in search(query, tld="co.in", num=1, stop=1, pause=2):
print(j)
そのため、私はPythonコードを小さなJSLでラップして、リストを取得し、検索と結果を繰り返し処理しました。
names default to here(1);
outlist={}; clist=:Company<<GET values=""></GET>
注目する唯一の本当のトリックは、Pythonコードのテキスト全体がSubstitute関数にあるということです。代替では、"xyzxyz"が削除され、列の値に置き換えられます。 JMPの将来のバージョン(v14など)では、変数を処理してpythonを使用するためのより良い方法がいくつかありますが、ここではテキストファイル、ディスクへのpythonコード、そしてpythonプログラムの実行を書いています。
プログラムは、リストに追加した値を返します。一つの会社名が入り、一つの項目が出る。これは1:1なので、リストを列に入れるだけですべてが揃うはずです。私が返された結果のいくつかは仕事を必要としました、しかし大部分は完全に出ました。
討論
私はほぼ100%確実な解決策があると確信していますが、これをまとめるには約15分かかり、10分間実行した後、約99%完了したリストがありました。 それで、あなたは私が持っているものより良いものを持っている、それを投稿してください。 JMPと他のパッケージの間を行き来したり、JMPで他のツールを使用したりする柔軟性は、私の作業をはるかに簡単にします。 私の例では、私は約600の名前を使って作業しました。コピー&ペーストのテディウムは何時間も薬を使うことができたが、これで全ての仕事を終えたし、それを手作業でやらなければならなくなるまでにまだ短い時間でブログを書く時間があった。さらに、明日私がリストの後半を手に入れたとき。スクリプトをもう一度実行するだけです。
@Craige_Hales 、ありがとう、… (おっと!、その実行プログラムはあなたの投稿からコピーアンドペーストですか?)