Guest User

Untitled

a guest
Jan 21st, 2019
88
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.02 KB | None | 0 0
  1. {
  2. "cells": [
  3. {
  4. "cell_type": "code",
  5. "execution_count": 2,
  6. "metadata": {},
  7. "outputs": [
  8. {
  9. "name": "stdout",
  10. "output_type": "stream",
  11. "text": [
  12. "14 - CV Lattes para avaliação\n"
  13. ]
  14. }
  15. ],
  16. "source": [
  17. "#importar lista e lattes do arquivo listalattes.xlsx\n",
  18. "list_lattes = pd.read_excel('listalattes.xlsx', header= None, index_col= None) \n",
  19. "list_lattes = list_lattes[0]\n",
  20. "print(len(list_lattes), '- CV Lattes para avaliação')"
  21. ]
  22. },
  23. {
  24. "cell_type": "code",
  25. "execution_count": 3,
  26. "metadata": {},
  27. "outputs": [
  28. {
  29. "name": "stdout",
  30. "output_type": "stream",
  31. "text": [
  32. "Linhas Prod de Andreza Portella Ribeiro : 37\n",
  33. "Linhas Prod de Carlos Leite de Souza : 53\n",
  34. "Linhas Prod de Cintia Elisa de Castro Marino : 0\n",
  35. "Linhas Prod de Cristiano Capellani Quaresma : 17\n",
  36. "Linhas Prod de Diego de Melo Conti : 13\n",
  37. "Linhas Prod de Heidy Rodriguez Ramos : 40\n",
  38. "Linhas Prod de Humberto Dantas de Mizuca : 52\n",
  39. "Linhas Prod de João Alexandre Paschoalin Filho : 34\n",
  40. "Linhas Prod de José Eduardo Storopoli : 19\n",
  41. "Linhas Prod de Jose Ricardo Marar : 1\n",
  42. "Linhas Prod de Luís Fernando Massonetto : 11\n",
  43. "Linhas Prod de Maurício Lamano Ferreira : 39\n",
  44. "Linhas Prod de Tatiana Tucunduva Philippi Cortese : 17\n",
  45. "Linhas Prod de Wilson Levy Braga da Silva Neto : 28\n"
  46. ]
  47. }
  48. ],
  49. "source": [
  50. "prod_df = pd.DataFrame()\n",
  51. "for row in list_lattes:\n",
  52. " url = row\n",
  53. " page = requests.get(url)\n",
  54. " #Parse o HTML\n",
  55. " soup = BeautifulSoup(page.text, 'html.parser')\n",
  56. " #Achar nome do titular do CV Lattes\n",
  57. " name = soup.find(class_='nome')\n",
  58. " name = name.text\n",
  59. " #Achar todos os artigos completos publicados em periodicos\n",
  60. " tb = soup.find_all('div', class_='artigo-completo') \n",
  61. " #fazer uma lista com cada um dos anos e ISSN\n",
  62. " ano=[]\n",
  63. " for i in tb:\n",
  64. " inf_ano = i.find_all('span', class_='informacao-artigo')[2]\n",
  65. " ano.append(inf_ano.text)\n",
  66. " issn=[]\n",
  67. " for i in tb:\n",
  68. " try:\n",
  69. " inf_issn = i.img.get('data-issn')\n",
  70. " except AttributeError:\n",
  71. " issn.append(None)\n",
  72. " else:\n",
  73. " issn.append(inf_issn)\n",
  74. " #fazer uma lista com cada um dos artigos completos\n",
  75. " prod = []\n",
  76. " for i in tb:\n",
  77. " prod.append(i.text)\n",
  78. " print('Linhas Prod de ', name, ': ', len(prod))\n",
  79. " #remover duplicados de cada artigo\n",
  80. " prod = [re.sub('\\n\\d{1,2}\\.', '', i) for i in prod]\n",
  81. " prod = [re.sub('\\n', '', i) for i in prod]\n",
  82. " prod = [re.sub('.*\\.\\d{4}', '',i) for i in prod]\n",
  83. " prod = [re.sub('\\d{1,2}\\w*\\,\\s\\w*\\B\\d{4}', '',i) for i in prod]\n",
  84. " prod = [re.sub('\\d{1,2}\\w{2,}\\s\\w{2,}\\d{4}', '',i) for i in prod]\n",
  85. " prod = [re.sub('\\w{2,}\\s\\w{2,}\\,\\s[\\wÀ-ú]*\\d{4}', '',i) for i in prod]\n",
  86. " prod = [re.sub('\\w{2,}\\,\\s[\\wÀ-ú]*\\s[\\wÀ-ú]*\\d{4}', '',i) for i in prod]\n",
  87. " #duplicar o nome para o tamanho da lista dos artigos publicados\n",
  88. " name_list = [name] * len(prod)\n",
  89. " new_df = pd.DataFrame(\n",
  90. " {'Nome': name_list,\n",
  91. " 'Ano': ano,\n",
  92. " 'ArtigosCompletos': prod,\n",
  93. " 'ISSN': issn\n",
  94. " })\n",
  95. " prod_df = prod_df.append(new_df, ignore_index=True)"
  96. ]
  97. }
  98. ],
  99. "metadata": {
  100. "kernelspec": {
  101. "display_name": "Python 3",
  102. "language": "python",
  103. "name": "python3"
  104. },
  105. "language_info": {
  106. "codemirror_mode": {
  107. "name": "ipython",
  108. "version": 3
  109. },
  110. "file_extension": ".py",
  111. "mimetype": "text/x-python",
  112. "name": "python",
  113. "nbconvert_exporter": "python",
  114. "pygments_lexer": "ipython3",
  115. "version": "3.6.8"
  116. }
  117. },
  118. "nbformat": 4,
  119. "nbformat_minor": 2
  120. }
Add Comment
Please, Sign In to add comment