#include "MySQLWrapper.h" #include #include #include #include #include #include #include #include #include #include using namespace std; #include "local_db_account.h" #include "util.hpp" int main() { /// tag_cloud 全国公司的城市分布 MySQLConn conn; conn.connect("127.0.0.1",db_user,db_passwd,"bigdata3",3306); cout<<"Connected to DB"< mp; conn.exec("select tags from lagou_job",[&](MySQLResult& res) { res.stepRow([&](char** val,unsigned long* len) { string tags(Trim(string(val[0]))); vector tagvec=ParseTag(tags.c_str()); for(const auto& tag:tagvec) { auto iter=mp.find(tag); if(iter!=mp.end()) { iter->second += 1; } else { mp.insert(make_pair(tag,1)); } } }); }); conn.exec("use bigdata5",nullptr); conn.exec("select tags from pages",[&](MySQLResult& res) { res.stepRow([&](char** val,unsigned long* len) { string tags(Trim(string(val[0]))); vector tagvec=ParseTagX(tags.c_str()); for(const auto& tag:tagvec) { auto iter=mp.find(tag); if(iter!=mp.end()) { iter->second += 1; } else { mp.insert(make_pair(tag,1)); } } }); }); vector> vec; for(const auto& pr:mp) { vec.push_back(pr); } sort(vec.begin(),vec.end(),[](const pair& a,const pair& b) { return a.second > b.second; }); ofstream ofs("result/tag_cloud.csv"); #define cout ofs cout<<"标签,出现次数"<