Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
A webscraping example
import re
import json
import requests
from pprint import pprint
from bs4 import BeautifulSoup
def type_section(tag):
"""Find the tags that has the move type and pokemon name"""
pattern = r"[A-z]{3,} Type: [A-z]{3,}"
# if all these things are true, it should be the right tag
return all((tag.name == 'div',
len(tag.get('class', '')) == 1,
'field__item' in tag.get('class', []),
re.findall(pattern, tag.text),
))
def parse_type_pokemon(tag):
"""Parse out the move type and pokemon from the tag text"""
s = tag.text.strip()
poke_type, pokemon = s.split(' Type: ')
return {'type': poke_type, 'pokemon': pokemon}
def parse_speciality(tag):
"""Parse the tag containing the speciality and moves"""
table = tag.find('table')
rows = table.find_all('tr')
speciality_row, fast_row, charge_row = rows
speciality_types = []
for anchor in speciality_row.find_all('a'):
# Each type 'badge' has a href with the type name at the end
href = anchor.get('href')
speciality_types.append(href.split('#')[-1])
fast_move = fast_row.find('td').text
charge_move = charge_row.find('td').text
return {'speciality': speciality_types,
'fast_move': fast_move,
'charge_move': charge_move}
def parse_rating(tag):
"""Parse the tag containing categorical ratings and commentary"""
table = tag.find('table')
category_tags = table.find_all('th')
strength_tag, meta_tag, future_tag = category_tags
str_rating = strength_tag.parent.find('td').text.strip()
meta_rating = meta_tag.parent.find('td').text.strip()
future_rating = meta_tag.parent.find('td').text.strip()
blurb_tags = table.find_all('td', {'colspan': '2'})
if blurb_tags:
# `if` to accomodate fire section bug
str_blurb_tag, meta_blurb_tag, future_blurb_tag = blurb_tags
str_blurb = str_blurb_tag.text.strip()
meta_blurb = meta_blurb_tag.text.strip()
future_blurb = future_blurb_tag.text.strip()
else:
str_blurb = None;meta_blurb=None;future_blurb=None
return {'strength': {
'rating': str_rating,
'commentary': str_blurb},
'meta': {
'rating': meta_rating,
'commentary': meta_blurb},
'future': {
'rating': future_rating,
'commentary': future_blurb}
}
def extract_divs(tag):
"""
Get the divs containing the moves/ratings
determined based on sibling position from the type tag
"""
_, speciality_div, _, rating_div, *_ = tag.next_siblings
return speciality_div, rating_div
def main():
"""Scrape the page and parse it all!"""
url = 'https://pokemongo.gamepress.gg/best-attackers-type'
response = requests.get(url)
soup = BeautifulSoup(response.text, 'lxml')
types = {}
for type_tag in soup.find_all(type_section):
type_info = {}
type_info.update(parse_type_pokemon(type_tag))
speciality_div, rating_div = extract_divs(type_tag)
type_info.update(parse_speciality(speciality_div))
type_info.update(parse_rating(rating_div))
type_ = type_info.get('type')
types[type_] = type_info
pprint(types) # We did it
with open('pokemon.json', 'w') as outfile:
json.dump(types, outfile)
if __name__ == '__main__':
main()
{
"Bug":{
"type":"Bug",
"pokemon":"Scizor",
"speciality":[
"psychic",
"dark",
"grass"
],
"fast_move":"Fury Cutter",
"charge_move":"X-Scissor",
"strength":{
"rating":"3 / 5",
"commentary":"Good typing and lightning-fast attacks. Though cool-looking, Scizor is somewhat fragile."
},
"meta":{
"rating":"2 / 5",
"commentary":"Bug-type isn\u2019t highly demanded unless Celebi becomes a raid boss."
},
"future":{
"rating":"2 / 5",
"commentary":"Yanmega (Gen 4), Volcarona (Gen 5) and Genesect (Gen 5) are its non-legendary competitors, all of which have better stats."
}
},
"Dark":{
"type":"Dark",
"pokemon":"Tyranitar",
"speciality":[
"psychic",
"ghost"
],
"fast_move":"Bite",
"charge_move":"Crunch",
"strength":{
"rating":"5 / 5",
"commentary":"Very powerful Pok\u00e9mon."
},
"meta":{
"rating":"4 / 5",
"commentary":"Best answer to Mewtwo and many Psychic-type legendaries to come. Also a great gym sweeper."
},
"future":{
"rating":"4 / 5",
"commentary":"Yveltal (Gen 6) is quite far away."
}
},
"Dragon":{
"type":"Dragon",
"pokemon":"Dragonite",
"speciality":[
"dragon"
],
"fast_move":"Dragon Breath / Dragon Tail",
"charge_move":"Outrage / Dragon Claw",
"strength":{
"rating":"5 / 5",
"commentary":"Very powerful Pok\u00e9mon with strong move options."
},
"meta":{
"rating":"4 / 5",
"commentary":"Premiere generalist of the game, with few types resisting Dragon attacks."
},
"future":{
"rating":"4 / 5",
"commentary":"Rayquaza is imminent. There will also be many extremely powerful Dragon-type legendaries, such as Palkia (Gen 4), Dialga (Gen 4), Giratina (Gen 4), Reshiram (Gen 5) and Zekrom (Gen 5). Depending on the accessibility of those mentioned above, Dragonite might still be the choice of the majority. It has flexible move options as well."
}
},
"Electric":{
"type":"Electric",
"pokemon":"Raikou",
"speciality":[
"water",
"flying"
],
"fast_move":"Thunder Shock",
"charge_move":"Wild Charge",
"strength":{
"rating":"4 / 5",
"commentary":"Very powerful Pok\u00e9mon with strong move options."
},
"meta":{
"rating":"5 / 5",
"commentary":"Optimal DPS counter to Water-type and Flying-type in the game. Both countered types are popular in gyms and raids."
},
"future":{
"rating":"5 / 5",
"commentary":"Zekrom (Gen 5) is somewhat far away but will be better than Raikou if having satisfactory moves."
}
},
"Fairy":{
"type":"Fairy",
"pokemon":"Gardevoir",
"speciality":[
"fighting",
"dark",
"dragon"
],
"fast_move":"Confusion",
"charge_move":"Dazzling Gleam",
"strength":{
"rating":"3 / 5",
"commentary":"Overall strong, but somewhat fragile. Lacking a Fairy-type fast move is its (and every Fairy-type\u2019s) major downside."
},
"meta":{
"rating":"3 / 5",
"commentary":"Ice-types usually perform better when countering Dragon-types. As for Dark and Fighting, there are better options. Overall useful but always suboptimal. Will see more use in Latios/Latias raid."
},
"future":{
"rating":"3 / 5",
"commentary":"Togekiss (Gen 4) is its most imminent competitor. Sylveon (Gen 6), an Eeveelution, will be more accessible and more powerful. But Xerneas (Gen 6), the legendary Fairy-type, will beat every other Fairy-type."
}
},
"Fighting":{
"type":"Fighting",
"pokemon":"Machamp",
"speciality":[
"normal",
"rock",
"steel",
"dark",
"ice"
],
"fast_move":"Counter",
"charge_move":"Dynamic Punch",
"strength":{
"rating":"4 / 5",
"commentary":"Solid stats paired with wonderful moves."
},
"meta":{
"rating":"5 / 5",
"commentary":"Definite answer to most common gym defenders. Optimal counter to Tyranitar, a popular raid boss. Fighting-type will always be very relevant as it has wide coverage."
},
"future":{
"rating":"5 / 5",
"commentary":"Machamp faces more threats in the long future. The closest one is Gallade (Gen 4). Even if it survives that again, it will eventually be out-classed by Conkeldurr (Gen 5), let alone the legendary Terrakion/Keldeo (Gen 5) and Buzzwole (Gen 7)."
}
},
"Fire":{
"type":"Fire",
"pokemon":"Moltres & Entei",
"speciality":[
"grass",
"bug",
"ice",
"steel"
],
"fast_move":"Fire Spin",
"charge_move":"Overheat",
"strength":{
"rating":"",
"commentary":null
},
"meta":{
"rating":"Fire Spin",
"commentary":null
},
"future":{
"rating":"Fire Spin",
"commentary":null
}
},
"Flying":{
"type":"Flying",
"pokemon":"Lugia",
"speciality":[
"grass",
"bug",
"fighting"
],
"fast_move":"Extrasensory",
"charge_move":"Sky Attack",
"strength":{
"rating":"4 / 5",
"commentary":"Very bulky and reliable Pok\u00e9mon. Great counter to fighting types."
},
"meta":{
"rating":"2 / 5",
"commentary":"Fire-types and Psychic types handle its coverage better. Until Pok\u00e9mon with double weakness to Flying become relevant, Flying-type sees limited use."
},
"future":{
"rating":"2 / 5",
"commentary":"One word: Rayquaza."
}
},
"Ghost":{
"type":"Ghost",
"pokemon":"Gengar",
"speciality":[
"ghost",
"psychic"
],
"fast_move":"Shadow Claw",
"charge_move":"Shadow Ball",
"strength":{
"rating":"3 / 5",
"commentary":"The very definition of Glass Cannon."
},
"meta":{
"rating":"4 / 5",
"commentary":"Maintain the title of \u201cHighest DPS against Psychic and Ghost\u201d, making it one of the favorite of DPS believers."
},
"future":{
"rating":"4 / 5",
"commentary":"Giratina (Gen 4), a legendary, has lower attack but 3.5x bulk. Eventually, Chandelure (Gen 5), Hoopa (Gen 6) and Lunala (Gen 7) will outclass Gengar."
}
},
"Grass":{
"type":"Grass",
"pokemon":"Exeggutor",
"speciality":[
"water",
"rock",
"ground"
],
"fast_move":"Bullet Seed",
"charge_move":"Solar Beam",
"strength":{
"rating":"4 / 5",
"commentary":"Good stats distribution with strong charge move."
},
"meta":{
"rating":"2 / 5",
"commentary":"With the rise of Water-type and the already strong Electric-type, Exeggutor has to seek relevance in Water + Rock/Ground matchups. Being the optimal counter to Solar Beam Groudon is definitely a plus which unfortunately doesn\u2019t last long."
},
"future":{
"rating":"2 / 5",
"commentary":"Tangrowth (Gen 4), Shaymin (Gen 4) and Virizion (Gen 5) are its competitors, all with similar stats but lower attack. However, Tangrowth has the potential to learn Grass Knot/Power Whip, a better charge move than Solar Beam, to get close to or even surpass Exeggutor\u2019s DPS."
}
},
"Ground":{
"type":"Ground",
"pokemon":"Groudon",
"speciality":[
"electr",
"rock",
"poison",
"steel",
"fire"
],
"fast_move":"Mud Shot",
"charge_move":"Earthquake",
"strength":{
"rating":"5 / 5",
"commentary":"Extremely powerful. If un-nerfed, definitely overpowered."
},
"meta":{
"rating":"2 / 5",
"commentary":"Will be more relevant when Raikou returns. Will see more use in Regi Trio raids."
},
"future":{
"rating":"2 / 5",
"commentary":"Best Ground attacker of all generations."
}
},
"Ice":{
"type":"Ice",
"pokemon":"Articuno",
"speciality":[
"flying",
"grass",
"dragon",
"ground"
],
"fast_move":"Frost Breath",
"charge_move":"Blizzard / Ice Beam",
"strength":{
"rating":"4 / 5",
"commentary":"Somewhat low stats compared to its legendary peers."
},
"meta":{
"rating":"3 / 5",
"commentary":"Will be more relevant when Rayquaza enters as a Raid Boss. See some use in Groudon raid, but doesn\u2019t last long. Always a good choice against a Dragonite in gyms."
},
"future":{
"rating":"3 / 5",
"commentary":"Mamoswine (Gen 4), a non-legendary, beats Articuno stat-wise. Eventually, Kyurem (Gen 5), a legendary, will make every other Ice-type kneel."
}
},
"Normal":{
"type":"Normal",
"pokemon":"Snorlax",
"speciality":[
],
"fast_move":"Lick",
"charge_move":"Hyper Beam",
"strength":{
"rating":"3 / 5",
"commentary":"Tanky and reliable attacker for the early meta game."
},
"meta":{
"rating":"1 / 5",
"commentary":"Enjoys no type effectiveness. When exploiting the immunity to Ghost, the advantage is offset by the immunity to Normal of the counterparty. As a generalist, there are usually better options."
},
"future":{
"rating":"1 / 5",
"commentary":"Porygon-Z (Gen 4), and the legendary Regigigas (Gen 4), if getting \u201cordinary\u201d Normal moves, will be better. But everything kneels in front of the God \u2013 Arceus (Gen 4)."
}
},
"Poison":{
"type":"Poison",
"pokemon":"Muk",
"speciality":[
"grass",
"fairy"
],
"fast_move":"Poison Jab",
"charge_move":"Gunk Shot",
"strength":{
"rating":"3 / 5",
"commentary":"Solid stats and good moves."
},
"meta":{
"rating":"1 / 5",
"commentary":"Very limited calls for Poison-type. Relevant Fairy-types often learns Psychic attacks, which Poison-type is weak to."
},
"future":{
"rating":"1 / 5",
"commentary":"Nihilego (Gen 7) is the real threat, while Roserade (Gen 4) is more a Glass Cannon. Muk is very future-proof."
}
},
"Psychic":{
"type":"Psychic",
"pokemon":"Mewtwo",
"speciality":[
"fighting",
"poison"
],
"fast_move":"Confusion",
"charge_move":"Psychic",
"strength":{
"rating":"5 / 5",
"commentary":"It\u2019s freaking Mewtwo!"
},
"meta":{
"rating":"3 / 5",
"commentary":"Useful in the popular Machamp raids. Besides, a lot of Pokemon are Poison-typed, countered by Psychic. Beyond those, Psychic specialists see limited use. Note that Mewtwo has better relevance if learning Focus Blast or Shadow Ball."
},
"future":{
"rating":"3 / 5",
"commentary":"Lunala/Solgaleo (Gen 7) are the only worthy competitors, both having lower attack."
}
},
"Rock":{
"type":"Rock",
"pokemon":"Golem",
"speciality":[
"bug",
"ice",
"fire",
"flying"
],
"fast_move":"Rock Throw",
"charge_move":"Stone Edge",
"strength":{
"rating":"4 / 5",
"commentary":"Solid stats with a strong fast move."
},
"meta":{
"rating":"2 / 5",
"commentary":"With the birds\u2019 departure and Water-type\u2019s new rise, Golem has found itself more irrelevant than ever. That being said, Rock-type will definitely see use in the future as its coverage is quite wide."
},
"future":{
"rating":"2 / 5",
"commentary":"Rhyperior (Gen 4) is its most imminent threat. Tyranitar and Rhydon are always waiting for a Rock-type fast move. Eventually, all will kneel before Terrakion (Gen 5) and Nihilego (Gen 7)."
}
},
"Steel":{
"type":"Steel",
"pokemon":"Scizor",
"speciality":[
"rock",
"fairy",
"ice"
],
"fast_move":"Bullet Punch",
"charge_move":"Iron Head",
"strength":{
"rating":"3 / 5",
"commentary":"Fragile, with Steel moves leaving much to be desired."
},
"meta":{
"rating":"2 / 5",
"commentary":"Steel attacks are most needed when dealing with strong fairy-types, i.e. Gardevoir in gyms. Beyond that it sees limited use."
},
"future":{
"rating":"2 / 5",
"commentary":"Metagross is imminent. Jirachi with stupidly strong Doom Desire could come right after. Dialga (Gen 4), a legendary, is a legendary threat. Solgaleo/Kartana (Gen 7) are further but also great threats."
}
},
"Water":{
"type":"Water",
"pokemon":"Kyogre",
"speciality":[
"fire",
"rock",
"ground"
],
"fast_move":"Waterfall",
"charge_move":"Hydro Pump",
"strength":{
"rating":"5 / 5",
"commentary":"A Pokemon that can summon storms that cause the sea levels to rise."
},
"meta":{
"rating":"4 / 5",
"commentary":"Brought the meta back to where the game first started: Water-centric. Anything weak to water will be a joke. Anything that doesn't resist water will still get drowned by this super Vaporeon. Overall, an extremely powerful specialist AND a top generalist."
},
"future":{
"rating":"4 / 5",
"commentary":"Palkia (Gen 4) is a Dragon/Water-typed legendary that has higher base Atk than Kyogre (assuming the same 9-antic nerf). Its Dragon typing offers an extra resistance to fire, making its effective bulk greater than that of Kyogre's in those matchups. Looking at its move pool in the main series, however, Palkia doesn't learn any of the Water fast moves currently in PoGo. Aside from those already in PoGo, Palkia's only remaining Water moves are Aqua Ring and Rain Dance, both being Status Moves (Status Moves currently in the game: Splash, Transform). In this editor's view, Kyogre will remain the best water type of all generations to come."
}
}
}
<!DOCTYPE html>
<html lang="en" dir="ltr" xmlns:article="http://ogp.me/ns/article#" xmlns:book="http://ogp.me/ns/book#" xmlns:product="http://ogp.me/ns/product#" xmlns:profile="http://ogp.me/ns/profile#" xmlns:video="http://ogp.me/ns/video#" prefix="content: http://purl.org/rss/1.0/modules/content/ dc: http://purl.org/dc/terms/ foaf: http://xmlns.com/foaf/0.1/ og: http://ogp.me/ns# rdfs: http://www.w3.org/2000/01/rdf-schema# schema: http://schema.org/ sioc: http://rdfs.org/sioc/ns# sioct: http://rdfs.org/sioc/types# skos: http://www.w3.org/2004/02/skos/core# xsd: http://www.w3.org/2001/XMLSchema# ">
<head>
<meta charset="utf-8" /><script type="text/javascript">window.NREUM||(NREUM={}),__nr_require=function(e,t,n){function r(n){if(!t[n]){var o=t[n]={exports:{}};e[n][0].call(o.exports,function(t){var o=e[n][1][t];return r(o||t)},o,o.exports)}return t[n].exports}if("function"==typeof __nr_require)return __nr_require;for(var o=0;o<n.length;o++)r(n[o]);return r}({1:[function(e,t,n){function r(){}function o(e,t,n){return function(){return i(e,[f.now()].concat(u(arguments)),t?null:this,n),t?void 0:this}}var i=e("handle"),a=e(2),u=e(3),c=e("ee").get("tracer"),f=e("loader"),s=NREUM;"undefined"==typeof window.newrelic&&(newrelic=s);var p=["setPageViewName","setCustomAttribute","setErrorHandler","finished","addToTrace","inlineHit","addRelease"],d="api-",l=d+"ixn-";a(p,function(e,t){s[t]=o(d+t,!0,"api")}),s.addPageAction=o(d+"addPageAction",!0),s.setCurrentRouteName=o(d+"routeName",!0),t.exports=newrelic,s.interaction=function(){return(new r).get()};var m=r.prototype={createTracer:function(e,t){var n={},r=this,o="function"==typeof t;return i(l+"tracer",[f.now(),e,n],r),function(){if(c.emit((o?"":"no-")+"fn-start",[f.now(),r,o],n),o)try{return t.apply(this,arguments)}catch(e){throw c.emit("fn-err",[arguments,this,e],n),e}finally{c.emit("fn-end",[f.now()],n)}}}};a("setName,setAttribute,save,ignore,onEnd,getContext,end,get".split(","),function(e,t){m[t]=o(l+t)}),newrelic.noticeError=function(e){"string"==typeof e&&(e=new Error(e)),i("err",[e,f.now()])}},{}],2:[function(e,t,n){function r(e,t){var n=[],r="",i=0;for(r in e)o.call(e,r)&&(n[i]=t(r,e[r]),i+=1);return n}var o=Object.prototype.hasOwnProperty;t.exports=r},{}],3:[function(e,t,n){function r(e,t,n){t||(t=0),"undefined"==typeof n&&(n=e?e.length:0);for(var r=-1,o=n-t||0,i=Array(o<0?0:o);++r<o;)i[r]=e[t+r];return i}t.exports=r},{}],4:[function(e,t,n){t.exports={exists:"undefined"!=typeof window.performance&&window.performance.timing&&"undefined"!=typeof window.performance.timing.navigationStart}},{}],ee:[function(e,t,n){function r(){}function o(e){function t(e){return e&&e instanceof r?e:e?c(e,u,i):i()}function n(n,r,o,i){if(!d.aborted||i){e&&e(n,r,o);for(var a=t(o),u=m(n),c=u.length,f=0;f<c;f++)u[f].apply(a,r);var p=s[y[n]];return p&&p.push([b,n,r,a]),a}}function l(e,t){v[e]=m(e).concat(t)}function m(e){return v[e]||[]}function w(e){return p[e]=p[e]||o(n)}function g(e,t){f(e,function(e,n){t=t||"feature",y[n]=t,t in s||(s[t]=[])})}var v={},y={},b={on:l,emit:n,get:w,listeners:m,context:t,buffer:g,abort:a,aborted:!1};return b}function i(){return new r}function a(){(s.api||s.feature)&&(d.aborted=!0,s=d.backlog={})}var u="nr@context",c=e("gos"),f=e(2),s={},p={},d=t.exports=o();d.backlog=s},{}],gos:[function(e,t,n){function r(e,t,n){if(o.call(e,t))return e[t];var r=n();if(Object.defineProperty&&Object.keys)try{return Object.defineProperty(e,t,{value:r,writable:!0,enumerable:!1}),r}catch(i){}return e[t]=r,r}var o=Object.prototype.hasOwnProperty;t.exports=r},{}],handle:[function(e,t,n){function r(e,t,n,r){o.buffer([e],r),o.emit(e,t,n)}var o=e("ee").get("handle");t.exports=r,r.ee=o},{}],id:[function(e,t,n){function r(e){var t=typeof e;return!e||"object"!==t&&"function"!==t?-1:e===window?0:a(e,i,function(){return o++})}var o=1,i="nr@id",a=e("gos");t.exports=r},{}],loader:[function(e,t,n){function r(){if(!x++){var e=h.info=NREUM.info,t=d.getElementsByTagName("script")[0];if(setTimeout(s.abort,3e4),!(e&&e.licenseKey&&e.applicationID&&t))return s.abort();f(y,function(t,n){e[t]||(e[t]=n)}),c("mark",["onload",a()+h.offset],null,"api");var n=d.createElement("script");n.src="https://"+e.agent,t.parentNode.insertBefore(n,t)}}function o(){"complete"===d.readyState&&i()}function i(){c("mark",["domContent",a()+h.offset],null,"api")}function a(){return E.exists&&performance.now?Math.round(performance.now()):(u=Math.max((new Date).getTime(),u))-h.offset}var u=(new Date).getTime(),c=e("handle"),f=e(2),s=e("ee"),p=window,d=p.document,l="addEventListener",m="attachEvent",w=p.XMLHttpRequest,g=w&&w.prototype;NREUM.o={ST:setTimeout,SI:p.setImmediate,CT:clearTimeout,XHR:w,REQ:p.Request,EV:p.Event,PR:p.Promise,MO:p.MutationObserver};var v=""+location,y={beacon:"bam.nr-data.net",errorBeacon:"bam.nr-data.net",agent:"js-agent.newrelic.com/nr-1071.min.js"},b=w&&g&&g[l]&&!/CriOS/.test(navigator.userAgent),h=t.exports={offset:u,now:a,origin:v,features:{},xhrWrappable:b};e(1),d[l]?(d[l]("DOMContentLoaded",i,!1),p[l]("load",r,!1)):(d[m]("onreadystatechange",o),p[m]("onload",r)),c("mark",["firstbyte",u],null,"api");var x=0,E=e(4)},{}]},{},["loader"]);</script>
<script>(function(i,s,o,g,r,a,m){i["GoogleAnalyticsObject"]=r;i[r]=i[r]||function(){(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)})(window,document,"script","//www.google-analytics.com/analytics.js","ga");ga("create", "UA-80708006-1", {"cookieDomain":"auto"});ga("set", "anonymizeIp", true);ga("send", "pageview");</script>
<meta name="title" content="Best Attackers by Type | Pokemon GO GamePress" />
<meta itemprop="itemprop:name" content="Best Attackers by Type" />
<meta property="og:site_name" content="Pokemon GO GamePress" />
<meta name="twitter:title" content="Best Attackers by Type" />
<meta name="twitter:site" content="GamePressGG" />
<meta itemprop="itemprop:description" content="Pokemon GO Database, News, Strategy, and Community for the Pokemon GO Player." />
<meta name="twitter:description" content="Pokemon GO Database, News, Strategy, and Community for the Pokemon GO Player." />
<meta property="og:url" content="https://pokemongo.gamepress.gg/best-attackers-type" />
<meta property="og:title" content="Best Attackers by Type" />
<meta property="og:description" content="Pokemon GO Database, News, Strategy, and Community for the Pokemon GO Player." />
<meta name="Generator" content="Drupal 8 (https://www.drupal.org)" />
<meta name="MobileOptimized" content="width" />
<meta name="HandheldFriendly" content="true" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<link rel="shortcut icon" href="/sites/default/files/pogo-favicon.png" type="image/png" />
<link rel="alternate" hreflang="en" href="https://pokemongo.gamepress.gg/best-attackers-type" />
<link rel="canonical" href="/best-attackers-type" />
<link rel="shortlink" href="/node/279121" />
<link rel="revision" href="/best-attackers-type" />
<title>Best Attackers by Type | Pokemon GO GamePress</title>
<link rel="stylesheet" href="/sites/default/files/css/css_3lBjB9LxWGvT5F_MnCGazkuov6eT9QNhKr0hGqtNWTk.css?p2ofp6" media="all" />
<link rel="stylesheet" href="/sites/default/files/css/css_2dlDgSX8OIbKP244DZA8mWduW3myhWz_TQ7QlwwnAjY.css?p2ofp6" media="all" />
<!--[if lte IE 8]>
<script src="/sites/default/files/js/js_VtafjXmRvoUgAzqzYTA3Wrjkx9wcWhjP0G4ZnnqRamA.js"></script>
<![endif]-->
<link href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.3/css/font-awesome.min.css" rel="stylesheet" integrity="sha384-T8Gy5hrqNKT+hzMclPo118YTQO6cYprQmhrYwIiQ/3axmI1hQomh7Ud2hPOy8SP1" crossorigin="anonymous">
</head>
<body class="two-sidebars site-gamepress path-node node--type-page">
<div id="top-page"></div>
<script type="text/javascript">
/* A9 Load Lib */
!function(a9,a,p,s,t,A,g){if(a[a9])return;function q(c,r){a[a9]._Q.push([c,r])}a[a9]={init:function(){q("i",arguments)},fetchBids:function()
{q("f",arguments)},setDisplayBids:function(){},_Q:[]};A=p.createElement(s);A.async=!0;A.src=t;g=p.getElementsByTagName(s)[0];g.parentNode.insertBefore(
A,g)}("apstag",window,document,"script","//c.amazon-adsystem.com/aax2/apstag.js");
</script>
<script type="text/javascript">
var adsStart = (new Date()).getTime();
function detectWidth() {
return window.screen.width || window.innerWidth || window.document.documentElement.clientWidth || Math.min(window.innerWidth, window.document.documentElement.clientWidth) || window.innerWidth || window.document.documentElement.clientWidth || window.document.getElementsByTagName('body')[0].clientWidth;
}
var TIMEOUT = 2000;
/* A9 Init */
apstag.init({
pubID: 'edf9e12e-6c41-40a2-bcc3-2f7942aec18a',
adServer: 'googletag'
});
var googletag = googletag || {};
googletag.cmd = googletag.cmd || [];
var pbjs = pbjs || {};
pbjs.que = pbjs.que || [];
var adUnits = adUnits || [];
/* A9 Vars */
var a9Slots = [];
var a9BidsBack = false;
function initAdServer() {
if (pbjs.initAdserverSet) return;
(function() {
var gads = document.createElement('script');
gads.async = true;
gads.type = 'text/javascript';
var useSSL = 'https:' == document.location.protocol;
gads.src = (useSSL ? 'https:' : 'http:') +
'//www.googletagservices.com/tag/js/gpt.js';
var node = document.getElementsByTagName('script')[0];
node.parentNode.insertBefore(gads, node);
})();
pbjs.initAdserverSet = true;
};
pbjs.timeout = setTimeout(initAdServer, TIMEOUT);
pbjs.timeStart = adsStart;
var dfpNetwork = '31904509';
// START: Defining Adunits
if(detectWidth() > 980)
{
// Desktop Adunits
adUnits.push({
network: dfpNetwork,
adunit: 'PokemonGo_Desktop_728x90_ATF',
size: [[728, 90],[970,90]],
code: 'div-ad-PokemonGo_Desktop_728x90_ATF',
assignToVariableName: false // false if not in use
});
adUnits.push({
network: dfpNetwork,
adunit: 'PokemonGo_Desktop_728x90_BTF',
size: [[728, 90]],
code: 'div-ad-PokemonGo_Desktop_728x90_BTF',
assignToVariableName: false // false if not in use
});
adUnits.push({
network: dfpNetwork,
adunit: 'PokemonGo_Desktop_RR_300x250_A',
size: [[300, 250],[300, 600]],
code: 'div-ad-PokemonGo_Desktop_RR_300x250_A',
assignToVariableName: false // false if not in use
});
adUnits.push({
network: dfpNetwork,
adunit: 'PokemonGo_Desktop_RR_300x250_B',
size: [[300, 250],[300, 600]],
code: 'div-ad-PokemonGo_Desktop_RR_300x250_B',
assignToVariableName: false // false if not in use
});
adUnits.push({
network: dfpNetwork,
adunit: 'PokemonGo_Desktop_RR_300x250_C',
size: [[300, 250],[300, 600]],
code: 'div-ad-PokemonGo_Desktop_RR_300x250_C',
assignToVariableName: false // false if not in use
});
adUnits.push({
network: dfpNetwork,
adunit: 'PokemonGo_Desktop_InContent_300x250_A',
size: [[300, 250]],
code: 'div-ad-PokemonGo_Desktop_InContent_300x250_A',
assignToVariableName: false // false if not in use
});
adUnits.push({
network: dfpNetwork,
adunit: 'PokemonGo_Desktop_InContent_300x250_B',
size: [[300, 250]],
code: 'div-ad-PokemonGo_Desktop_InContent_300x250_B',
assignToVariableName: false // false if not in use
});
adUnits.push({
network: dfpNetwork,
adunit: 'PokemonGo_Desktop_InContent_300x250_C',
size: [[300, 250]],
code: 'div-ad-PokemonGo_Desktop_InContent_300x250_C',
assignToVariableName: false // false if not in use
});
adUnits.push({
network: dfpNetwork,
adunit: 'PokemonGo_Desktop_InContent_300x250_D',
size: [[300, 250]],
code: 'div-ad-PokemonGo_Desktop_InContent_300x250_D',
assignToVariableName: false // false if not in use
});
} else {
// Mobile Adunits
adUnits.push({
network: dfpNetwork,
adunit: 'PokemonGo_Mobile_320x50_Floating',
size: [[320, 50]],
code: 'div-ad-PokemonGo_Mobile_320x50_Floating',
assignToVariableName: false // false if not in use
});
adUnits.push({
network: dfpNetwork,
adunit: 'PokemonGo_Mobile_320x50_Top',
size: [[320, 50]],
code: 'div-ad-PokemonGo_Mobile_320x50_Top',
assignToVariableName: false // false if not in use
});
adUnits.push({
network: dfpNetwork,
adunit: 'PokemonGo_Mobile_300x250_BTF_1',
size: [[300, 250]],
code: 'div-ad-PokemonGo_Mobile_300x250_BTF_1',
assignToVariableName: false // false if not in use
});
adUnits.push({
network: dfpNetwork,
adunit: 'PokemonGo_Mobile_300x250_BTF_2',
size: [[300, 250]],
code: 'div-ad-PokemonGo_Mobile_300x250_BTF_2',
assignToVariableName: false // false if not in use
});
adUnits.push({
network: dfpNetwork,
adunit: 'PokemonGo_Mobile_300x250_Extra_1',
size: [[300, 250]],
code: 'div-ad-PokemonGo_Mobile_300x250_Extra_1',
assignToVariableName: false // false if not in use
});
adUnits.push({
network: dfpNetwork,
adunit: 'PokemonGo_Mobile_300x250_Extra_2',
size: [[300, 250]],
code: 'div-ad-PokemonGo_Mobile_300x250_Extra_2',
assignToVariableName: false // false if not in use
});
}
// END: Defining Adunits
googletag.cmd.push(function() {
if(adUnits){
var dfpSlots = [];
for (var i = 0, len = adUnits.length; i < len; i++) {
dfpSlots[i] = googletag.defineSlot('/'+adUnits[i].network+'/'+adUnits[i].adunit, adUnits[i].size, adUnits[i].code).addService(googletag.pubads());
if(adUnits[i].assignToVariableName && (adUnits[i].assignToVariableName !== null)) window[adUnits[i].assignToVariableName] = dfpSlots[i];
}
}
});
/* A9 Slots */
if(adUnits){
if(apstag){
for (var i = 0, len = adUnits.length; i < len; i++) {
a9Slots.push({slotID: adUnits[i].code,slotName: adUnits[i].network+'/'+adUnits[i].adunit,sizes: adUnits[i].size});
}
}
}
/* A9 Request Bids */
apstag.fetchBids({
slots: a9Slots,
timeout: TIMEOUT
},
function(bids) {
//console.log('BDS back',(new Date()).getTime()-adsStart,bids);
a9BidsBack = true;
});
googletag.cmd.push(function() {
/* A9 Set Bids */
if(a9BidsBack) apstag.setDisplayBids();
// Header Bidding Targeting
pbjs.que.push(function() {pbjs.setTargetingForGPTAsync();});
// Init DFP
googletag.pubads().enableSingleRequest();
googletag.pubads().collapseEmptyDivs();
googletag.enableServices();
});
</script>
<script type="text/javascript" async="true" src="https://s3.us-east-2.amazonaws.com/prebid-gamepress/prebidjspokemongo.js?2"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script src="/showads.js"></script>
<script src="https://s3-us-west-1.amazonaws.com/adblock-creatives/pogo/pogo-check.js?1516235933"></script>
<div class="gamepress-top">
<div class="outer-wrapper">
<div class="">
<div id="block-topgames" class="block block-block-content block-block-contente5ce8191-2197-4f9d-acdf-0f25e7a556c8">
<div class="clearfix text-formatted field field--name-body field--type-text-with-summary field--label-hidden field__item"><div class="gamepress-logo">
<a class="gamepresslink" href="http://Gamepress.gg"><img src="/GamePressNewLogo.png"></a>
</div>
<ul id="top-games-bar">
<li><a href="https://pokemongo.gamepress.gg/"><img src="https://pokemongo.gamepress.gg/sites/default/files/pokemongoicon.png"></a></li>
<li><a href="https://fireemblem.gamepress.gg/"><img src="https://fireemblem.gamepress.gg/sites/fireemblem/files/heroes-logo.png"></a></li>
<li><a href="https://grandorder.gamepress.gg/"><img src="https://grandorder.gamepress.gg/sites/grandorder/files/fgo.png"></a></li>
<li><a href="https://shadowverse.gamepress.gg/"><img src="https://shadowverse.gamepress.gg/sites/shadowverse/files/sv-logo.jpg"></a></li>
<li><a href="https://wizardsunite.gamepress.gg/"><img src="https://wizardsunite.gamepress.gg/sites/wizardsunite/files/wizardsunite.jpg"></a></li>
</ul></div>
</div>
</div>
</div>
</div>
<div role="document" class="page">
<div id="site-banner">
<div class="outer-wrapper">
<div class="">
<div id="block-topad" class="block block-block-content block-block-content0167053c-821b-4689-997a-f77b97ced733">
<div class="clearfix text-formatted field field--name-body field--type-text-with-summary field--label-hidden field__item">
<center><div id='div-ad-PokemonGo_Desktop_728x90_ATF'>
<script>
if(detectWidth() > 980) { googletag.cmd.push(function() { googletag.display('div-ad-PokemonGo_Desktop_728x90_ATF'); }); }
</script>
</div>
<a class="bannerlink"><img class="adblockedBanner" /></a>
</center></div>
</div>
</div>
</div>
</div>
<div class="gamepress-branding">
<div class="outer-wrapper">
<div class="portal-section">
<div class="not-loggedin">
<ul>
<li class="first-portal-item"><a href="/user/login">Sign In</a></li>
<li><a href="https://gamepress.gg/user/register">Register</a></li>
</ul>
</div>
</div>
</div>
</div>
<header id="site-header">
<div class="outer-wrapper">
<div class="">
<div id="block-gamepressbase-branding" class="block block-system block-system-branding-block">
<a href="/" title="Home" rel="home" class="site-logo">
<img src="/sites/default/files/pokemongoicon.png" alt="Home" />
</a>
<div class="site-name">
<a href="/" title="Home" rel="home">Pokemon GO</a>
</div>
</div>
<div id="block-topsearch" class="block block-block-content block-block-contentf3043059-06a9-493e-8c65-388012b2f047">
<div class="clearfix text-formatted field field--name-body field--type-text-with-summary field--label-hidden field__item"><form action="/search">
<input id="pokemon-search" class="search-input" name="q" placeholder="Search Pokemon..." size="35" type="text" /><input type="image" src="/themes/gamepressbase/img/pokeball-search.png" border="0" alt="Submit" /></form></div>
</div><nav role="navigation" aria-labelledby="block-topmenu-menu" id="block-topmenu" class="block block-menu navigation menu--top-menu">
<h2 class="visually-hidden" id="block-topmenu-menu">Top Menu</h2>
<ul class="main-menu-content">
<li class="menu-item Pokemon" ">
<a href="/pokemon-list" data-drupal-link-system-path="node/197766">Pokemon</a>
</li>
<li class="menu-item IV Calc" ">
<a href="/pokemongo-iv-calculator" data-drupal-link-system-path="node/252346">IV Calc</a>
</li>
<li class="menu-item Counters" ">
<a href="/raid-boss-counters" title="Raid Boss Counters" data-drupal-link-system-path="node/215221">Counters</a>
</li>
<li class="menu-item Solo Raids" ">
<a href="/tier-3-raid-solo-guide" title="Tier 3 Solo Raid Guide" data-drupal-link-system-path="node/265771">Solo Raids</a>
</li>
<li class="menu-item News" ">
<a href="/news-0">News</a>
</li>
<li class="menu-item Q&amp;A" ">
<a href="/Q-A" data-drupal-link-system-path="Q-A">Q&amp;A</a>
</li>
</ul>
</nav>
</div>
</div>
</header>
<main role="main" class="outer-wrapper">
<aside id="sidebar-first" role="complementary" class="sidebar">
<div class="">
<nav role="navigation" aria-labelledby="block-mainnavigation-menu" id="block-mainnavigation" class="block block-menu navigation menu--main">
<h2 id="block-mainnavigation-menu">Menu</h2>
<ul class="main-menu-content">
<li class="menu-item Database menu-item--expanded" ">
<span>Database</span>
<ul class="menu">
<li class="menu-item Guides Database" ">
<a href="/guides" title="Guides Database" data-drupal-link-system-path="node/271316">Guides Database</a>
</li>
</ul>
</li>
<li class="menu-item Gen 3 menu-item--expanded" ">
<span>Gen 3</span>
<ul class="menu">
<li class="menu-item Pages Updated for Gen 3" ">
<a href="/pokemon-analysis-updated-gen-3" title="Pages Updated for Gen 3" data-drupal-link-system-path="node/273181">Pages Updated for Gen 3</a>
</li>
<li class="menu-item Gen 3 Pokemon Analysis" ">
<a href="/gen-3-update-new-pokemon-analysis" title="Gen 3 Pokemon Analysis" data-drupal-link-system-path="node/273396">Gen 3 Pokemon Analysis</a>
</li>
<li class="menu-item Overview Gen 3 Ice/Water Pokemon" ">
<a href="/overview-new-gen-3-icewater-pokemon" title="Overview Gen 3 Ice/Water Pokemon" data-drupal-link-system-path="node/276531">Overview Gen 3 Ice/Water Pokemon</a>
</li>
<li class="menu-item Machamp vs Hariyama" ">
<a href="/comparison-machamp-and-hariyama" title="Machamp vs Hariyama" data-drupal-link-system-path="node/274411">Machamp vs Hariyama</a>
</li>
<li class="menu-item Safest Bets for Gen 3" ">
<a href="/safest-pokemon-bets-gen-3" title="The Safest Pokemon Bets for Gen 3" data-drupal-link-system-path="node/260631">Safest Bets for Gen 3</a>
</li>
<li class="menu-item Groudon in the Meta" ">
<a href="/groudons-place-meta" title="Groudon&#039;s&#039;s Place in the Meta" data-drupal-link-system-path="node/274671">Groudon in the Meta</a>
</li>
<li class="menu-item Gen 3 Research" ">
<a href="/gen-3-pokemon-go-research" title="Gen 3 Research" data-drupal-link-system-path="node/271716">Gen 3 Research</a>
</li>
</ul>
</li>
<li class="menu-item Featured menu-item--expanded" ">
<span>Featured</span>
<ul class="menu">
<li class="menu-item A Guide on Breakpoints" ">
<a href="/guide-break-points" title="A Guide on Breakpoints" data-drupal-link-system-path="node/269446">A Guide on Breakpoints</a>
</li>
<li class="menu-item Tier 3 Raid Solo Guide" ">
<a href="/tier-3-raid-solo-guide" title="Tier 3 Raid Solo Guide" data-drupal-link-system-path="node/265771">Tier 3 Raid Solo Guide</a>
</li>
<li class="menu-item Weather Boosts" ">
<a href="/weather-boosts" title="Weather Boosts" data-drupal-link-system-path="node/273362">Weather Boosts</a>
</li>
<li class="menu-item A Guide on Battle Parties" ">
<a href="/guide-battle-parties" data-drupal-link-system-path="node/280041">A Guide on Battle Parties</a>
</li>
<li class="menu-item History of Grass-types in Pokemon GO" ">
<a href="/history-grass-types-pokemon-go" data-drupal-link-system-path="node/280031">History of Grass-types in Pokemon GO</a>
</li>
<li class="menu-item Meta Analysis of Gym Defense" ">
<a href="/meta-analysis-gym-defense" title="Meta Analysis of Gym Defense" data-drupal-link-system-path="node/278711">Meta Analysis of Gym Defense</a>
</li>
<li class="menu-item Star Pieces" ">
<a href="/star-pieces-maximizing-your-stardust-gains" title="Star Pieces" data-drupal-link-system-path="node/276541">Star Pieces</a>
</li>
</ul>
</li>
<li class="menu-item Rankings menu-item--expanded menu-item--active-trail" ">
<span>Rankings</span>
<ul class="menu">
<li class="menu-item Best Attackers by Type menu-item--active-trail" ">
<a href="/best-attackers-type" title="Best Attackers by Type" data-drupal-link-system-path="node/279121" class="is-active">Best Attackers by Type</a>
</li>
<li class="menu-item Attackers Tier List" ">
<a href="/attackers-tier-list" title="Attackers Tier List" data-drupal-link-system-path="node/245991">Attackers Tier List</a>
</li>
<li class="menu-item Raid Boss Counters" ">
<a href="/raid-boss-counters" title="Raid Boss Counters" data-drupal-link-system-path="node/215221">Raid Boss Counters</a>
</li>
<li class="menu-item Gym Defenders Tier List" ">
<a href="/gym-defenders-tier-list" title="Gym Defenders Tier List" data-drupal-link-system-path="node/225791">Gym Defenders Tier List</a>
</li>
</ul>
</li>
<li class="menu-item Calculators menu-item--expanded" ">
<span>Calculators</span>
<ul class="menu">
<li class="menu-item Breakpoint Calculator" ">
<a href="/breakpoint-calculator" title="Breakpoint Calculator" data-drupal-link-system-path="node/269241">Breakpoint Calculator</a>
</li>
<li class="menu-item CP Calculator" ">
<a href="/cpcalc" title="CP Calculator" data-drupal-link-system-path="node/252371">CP Calculator</a>
</li>
<li class="menu-item IV Calculator" ">
<a href="/pokemongo-iv-calculator" title="IV Calculator" data-drupal-link-system-path="node/252346">IV Calculator</a>
</li>
<li class="menu-item Raid IV Calculator" ">
<a href="/raid-iv-calc" title="Raid IV Calculator" data-drupal-link-system-path="node/256866">Raid IV Calculator</a>
</li>
<li class="menu-item Ditto Calculator" ">
<a href="/dittocalc" title="Ditto Calculator" data-drupal-link-system-path="node/252361">Ditto Calculator</a>
</li>
<li class="menu-item Catch Calculator" ">
<a href="/catchcalc" title="Catch Calculator" data-drupal-link-system-path="node/252366">Catch Calculator</a>
</li>
<li class="menu-item Raid Catch Calculator" ">
<a href="/raidcalc" title="Raid Catch Calculator" data-drupal-link-system-path="node/252356">Raid Catch Calculator</a>
</li>
</ul>
</li>
<li class="menu-item Pokemon menu-item--expanded" ">
<span>Pokemon</span>
<ul class="menu">
<li class="menu-item Pokemon List" ">
<a href="/pokemon-list" title="Pokemon List" data-drupal-link-system-path="node/197766">Pokemon List</a>
</li>
<li class="menu-item Raid Boss List" ">
<a href="/raid-boss-list" data-drupal-link-system-path="node/212276">Raid Boss List</a>
</li>
<li class="menu-item Max CP for All Pokemon Generations" ">
<a href="/max-cp" data-drupal-link-system-path="node/32271">Max CP for All Pokemon Generations</a>
</li>
<li class="menu-item Legacy Pokemon List" ">
<a href="/legacy-pokemon-list" title="Legacy Pokemon List" data-drupal-link-system-path="node/272121">Legacy Pokemon List</a>
</li>
<li class="menu-item References menu-item--expanded" ">
<span>References</span>
<ul class="menu">
<li class="menu-item Pokemon Boxes" ">
<a href="/pokemon-boxes" data-drupal-link-system-path="pokemon-boxes">Pokemon Boxes</a>
</li>
<li class="menu-item Power Up Costs" ">
<a href="/power-up-costs" title="Power Up Costs" data-drupal-link-system-path="node/339">Power Up Costs</a>
</li>
<li class="menu-item Type Chart" ">
<a href="/pokemon-type-chart-strengths-weakness" title="Type Chart" data-drupal-link-system-path="node/229351">Type Chart</a>
</li>
<li class="menu-item Eggs List" ">
<a href="/pokemongo-egg-list" title="Eggs List" data-drupal-link-system-path="node/224306">Eggs List</a>
</li>
</ul>
</li>
</ul>
</li>
<li class="menu-item Moves menu-item--expanded" ">
<span>Moves</span>
<ul class="menu">
<li class="menu-item Charge Moves" ">
<a href="/charge-moves" title="Charge Moves" data-drupal-link-system-path="node/276526">Charge Moves</a>
</li>
<li class="menu-item Fast Moves" ">
<a href="/fast-moves" title="Fast Moves" data-drupal-link-system-path="node/276521">Fast Moves</a>
</li>
</ul>
</li>
</ul>
</nav>
<div id="block-news" class="block block-block-content block-block-content3a12962d-8b01-44c7-8a30-9439ae47ec19">
<h2>GamePress News</h2>
<div class="clearfix text-formatted field field--name-body field--type-text-with-summary field--label-hidden field__item"><ul class="menu" id="side-news-menu"><li class="menu-item" id="news-1"></li>
<li class="menu-item" id="news-2"></li>
<li class="menu-item" id="news-3"></li>
<li class="menu-item" id="news-4"></li>
<li class="menu-item" id="news-5"></li>
</ul><script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script><script>
<!--//--><![CDATA[// ><!--
$(document).ready(function() {
var seconds = new Date().getTime() / 1000;
$.getJSON('https://gamepress.gg/side-news-feed?' + seconds,
function(data) {
var count = Math.min(5, data.length);
for(var i = 0; i < count; i++){
var curr = data[i];
var idx = i + 1;
var html = "<a href=' " + curr.field_featured_news_link + " '>" + curr.field_featured_news_title + "<\/a>";
document.getElementById("news-" + idx).innerHTML = html
}
});
});
//--><!]]>
</script></div>
</div>
</div>
</aside>
<section id="content">
<div id="content-inner">
<div class="">
<div id="block-320x50-top" class="block block-block-content block-block-content2f6ffeeb-843f-4862-b7fa-1558e7f12f73">
<div class="clearfix text-formatted field field--name-body field--type-text-with-summary field--label-hidden field__item">
<center><div id='div-ad-PokemonGo_Mobile_320x50_Top'>
<script>
if(detectWidth() <= 980) { googletag.cmd.push(function() { googletag.display('div-ad-PokemonGo_Mobile_320x50_Top'); }); }
</script>
</div>
<center></div>
</div>
<div id="block-gamepressbase-page-title" class="block block-core block-page-title-block">
<h1 class="page-title"><span property="schema:name" class="field field--name-title field--type-string field--label-hidden">Best Attackers by Type</span>
</h1>
</div>
<div id="block-topalert" class="block block-block-content block-block-content4249a5d2-ceaf-4780-833e-2820b9a83f69">
<div class="clearfix text-formatted field field--name-body field--type-text-with-summary field--label-hidden field__item"><div class="social-media-links">
<a target="_blank" class="discord-block" href="https://discord.gg/stN6aQJ">
<img src="https://gamepress.gg/themes/gamepressbase/img/Discord-Logo-White.png" />
Discord</a>
<a target="_blank" class="facebook-block" href="https://www.facebook.com/GamePress.GG/">
<i class="fa fa-facebook-official" aria-hidden="true"></i> Facebook</a>
<a target="_blank" class="twitter-block" href="https://twitter.com/GamePressGG">
<i class="fa fa-twitter-square" aria-hidden="true"></i> Twitter</a>
</div></div>
</div>
<div id="block-announcement" class="block block-block-content block-block-content32383c2d-0f8d-4943-9e33-2330e4da09a7">
<div class="clearfix text-formatted field field--name-body field--type-text-with-summary field--label-hidden field__item"><a href="/countering-kyogre-and-its-place-meta">
<div id="an-header">New Guide!</div>
<div id="an-sub-header">Countering Kyogre and its place in the meta</div>
</a></div>
</div>
<div id="block-gamepressbase-content" class="block block-system block-system-main-block">
<article id="node-279121" class="" data-history-node-id="279121" role="article" about="/best-attackers-type" typeof="schema:WebPage">
<span property="schema:name" content="Best Attackers by Type" class="rdf-meta hidden"></span>
<span property="schema:interactionCount" content="UserComments:0" class="rdf-meta hidden"></span>
<div class="field field--name-field-page-content field--type-entity-reference-revisions field--label-hidden field__items">
<div class="field__item"> <div class="paragraph paragraph--type--image paragraph--view-mode--default">
<div class="field field--name-field-image field--type-image field--label-hidden field__item"> <img src="/sites/default/files/2018-01/Banner_0.png" width="520" height="200" alt="Best Attackers by Type" typeof="foaf:Image" />
</div>
</div>
</div>
<div class="field__item"> <div class="paragraph paragraph--type--text paragraph--view-mode--default">
<div class="clearfix text-formatted field field--name-field-text field--type-text-long field--label-hidden field__item"><table><tbody><tr align="center"><td><a href="#bug1"><img src="/sites/default/files/2016-07/bug.gif" /></a></td>
<td><a href="#dark1"><img src="/sites/default/files/2016-07/dark.gif" /></a></td>
<td><a href="#dragon1"><img src="/sites/default/files/2016-07/dragon.gif" /></a></td>
<td><a href="#electric1"><img src="/sites/default/files/2016-07/electric.gif" /></a></td>
<td><a href="#fairy1"><img src="/sites/default/files/2016-07/fairy.gif" /></a></td>
<td><a href="#fighting1"><img src="/sites/default/files/2016-07/fighting.gif" /></a></td>
</tr><tr align="center"><td><a href="#fire1"><img src="/sites/default/files/2016-07/fire.gif" /></a></td>
<td><a href="#flying1"><img src="/sites/default/files/2016-07/flying.gif" /></a></td>
<td><a href="#ghost1"><img src="/sites/default/files/2016-07/ghost.gif" /></a></td>
<td><a href="#grass1"><img src="/sites/default/files/2016-07/grass.gif" /></a></td>
<td><a href="#ground1"><img src="/sites/default/files/2016-07/ground.gif" /></a></td>
<td><a href="#ice1"><img src="/sites/default/files/2016-07/ice.gif" /></a></td>
</tr><tr align="center"><td><a href="#normal1"><img src="/sites/default/files/2016-07/normal.gif" /></a></td>
<td><a href="#poison1"><img src="/sites/default/files/2016-07/poison.gif" /></a></td>
<td><a href="#psychic1"><img src="/sites/default/files/2016-07/psychic.gif" /></a></td>
<td><a href="#rock1"><img src="/sites/default/files/2016-07/rock.gif" /></a></td>
<td><a href="#steel1"><img src="/sites/default/files/2016-07/steel.gif" /></a></td>
<td><a href="#water1"><img src="/sites/default/files/2016-07/water.gif" /></a></td>
</tr></tbody></table><p></p></div>
</div>
</div>
<div class="field__item"> <div class="paragraph paragraph--type--text paragraph--view-mode--default">
<div class="clearfix text-formatted field field--name-field-text field--type-text-long field--label-hidden field__item"><style>
<!--/*--><![CDATA[/* ><!--*/
.field--name-field-left-pokemon .field__item{
margin-bottom:0px;
}
.field--name-field-right-explanation {
border: none;
}
.field--name-field-left-pokemon .field__item {
padding: 10px;
}
/*--><!]]>*/
</style><table id="quick-access-table"><tr><th colspan="6">Rankings</th>
</tr><tr><td colspan="2">
<a href="/gym-attackers-tier-list">
<amp-img src="/themes/gamepressbase/img/fist.png" width="30" height="30" layout="fixed" alt="Attackers"><img src="/themes/gamepressbase/img/fist.png" width="30" height="30" alt="Attackers" typeof="foaf:Image" class="image-style-pokemon-small" /></amp-img><br />Gym Attackers</a>
</td>
<td colspan="2">
<a href="/gym-defenders-tier-list">
<amp-img src="/themes/gamepressbase/img/shield.png" width="30" height="30" layout="fixed" alt="Defenders"><img src="/themes/gamepressbase/img/shield.png" width="30" height="30" alt="Defenders" typeof="foaf:Image" /></amp-img><br />Gym Defenders</a>
</td>
<td colspan="2" style="background: #f3f9ff;">
<a href="/highest-pokemon-dps-per-type">
<amp-img src="/themes/gamepressbase/img/crown.png" width="40" height="30" layout="fixed"><img src="/themes/gamepressbase/img/crown.png" width="40" height="30" typeof="foaf:Image" /></amp-img><br />ATK per type</a>
</td>
</tr></table></div>
</div>
</div>
<div class="field__item">
<center>
<div class="mobile-ic-ad" style="display:none;">
<hr />
<div class="mobile-ic-ad-inner">
<div id='div-ad-PokemonGo_Mobile_300x250_BTF_1'>
<script>
if(detectWidth() <= 980) { googletag.cmd.push(function() { googletag.display('div-ad-PokemonGo_Mobile_300x250_BTF_1'); }); }
</script>
</div>
</div>
<hr />
</div>
</center>
</div>
<div class="field__item"> <div class="paragraph paragraph--type--scrollto paragraph--view-mode--default">
<div id="bug1"></div>
</div>
</div>
<div class="field__item"> <div class="paragraph paragraph--type--title paragraph--view-mode--default">
<div class="field field--name-field-title field--type-string field--label-hidden field__item">Bug Type: Scizor</div>
</div>
</div>
<div class="field__item"> <div class="paragraph paragraph--type--two-column-1-4 paragraph--view-mode--default">
<div class="column-1-4-container">
<div class="field field--name-field-left-pokemon field--type-entity-reference field--label-hidden field__items">
<div class="field__item"><article id="node-3366" class="" data-history-node-id="3366" role="article" about="/pokemon/212">
<h2><a href="/pokemon/212" rel="bookmark"><span class="field field--name-title field--type-string field--label-hidden">Scizor</span>
</a></h2>
<a href="/pokemon/212"><img src="/sites/default/files/styles/50x50/public/2016-09/212.png?itok=2Y94XvGA" width="50" height="50" alt="Scizor" typeof="foaf:Image" class="image-style-_0x50" />
</a>
</article></div>
</div>
<div class="clearfix text-formatted field field--name-field-right-explanation field--type-text-long field--label-hidden field__item"><table><tr><th>Specialty</th>
<td>
<a href="https://pokemongo.gamepress.gg/pokemon-list#psychic" target="_blank"><img src="https://pokemongo.gamepress.gg/sites/default/files/2016-07/psychic.gif" /></a> 
<a href="https://pokemongo.gamepress.gg/pokemon-list#dark" target="_blank"><img src="https://pokemongo.gamepress.gg/sites/default/files/2016-07/dark.gif" /></a> 
<a href="https://pokemongo.gamepress.gg/pokemon-list#grass" target="_blank"><img src="https://pokemongo.gamepress.gg/sites/default/files/2016-07/grass.gif" /></a>
</td>
</tr><tr><th>Fast Move</th><td><a href="/pokemon-move/fury-cutter">Fury Cutter</a></td></tr><tr><th>Charge Move</th><td><a href="/pokemon-move/x-scissor">X-Scissor</a></td></tr></table></div>
</div>
</div>
</div>
<div class="field__item"> <div class="paragraph paragraph--type--text paragraph--view-mode--default">
<div class="clearfix text-formatted field field--name-field-text field--type-text-long field--label-hidden field__item"><table><tr><th>Strength</th>
<td><center><b>3</b> / 5</center></td>
</tr><tr><td colspan="2">Good typing and lightning-fast attacks. Though cool-looking, Scizor is somewhat fragile.</td>
</tr><tr><th>Meta-relevance</th>
<td><center><b>2</b> / 5</center></td>
</tr><tr><td colspan="2">Bug-type isn’t highly demanded unless Celebi becomes a raid boss.</td>
</tr><tr><th>Future-proof</th>
<td><center><b>2</b> / 5</center></td>
</tr><tr><td colspan="2">Yanmega (Gen 4), Volcarona (Gen 5) and Genesect (Gen 5) are its non-legendary competitors, all of which have better stats.</td>
</tr></table></div>
</div>
</div>
<div class="field__item"> <div class="paragraph paragraph--type--scrollto paragraph--view-mode--default">
<div id="dark1"></div>
</div>
</div>
<div class="field__item"> <div class="paragraph paragraph--type--title paragraph--view-mode--default">
<div class="field field--name-field-title field--type-string field--label-hidden field__item">Dark Type: Tyranitar</div>
</div>
</div>
<div class="field__item"> <div class="paragraph paragraph--type--two-column-1-4 paragraph--view-mode--default">
<div class="column-1-4-container">
<div class="field field--name-field-left-pokemon field--type-entity-reference field--label-hidden field__items">
<div class="field__item"><article id="node-3546" class="" data-history-node-id="3546" role="article" about="/pokemon/248">
<h2><a href="/pokemon/248" rel="bookmark"><span class="field field--name-title field--type-string field--label-hidden">Tyranitar</span>
</a></h2>
<a href="/pokemon/248"><img src="/sites/default/files/styles/50x50/public/2016-09/248.png?itok=ZHfnsH-5" width="50" height="50" alt="Tyranitar" typeof="foaf:Image" class="image-style-_0x50" />
</a>
</article></div>
</div>
<div class="clearfix text-formatted field field--name-field-right-explanation field--type-text-long field--label-hidden field__item"><table><tr><th>Specialty</th>
<td>
<a href="https://pokemongo.gamepress.gg/pokemon-list#psychic" target="_blank"><img src="https://pokemongo.gamepress.gg/sites/default/files/2016-07/psychic.gif" /></a> 
<a href="https://pokemongo.gamepress.gg/pokemon-list#ghost" target="_blank"><img src="https://pokemongo.gamepress.gg/sites/default/files/2016-07/ghost.gif" /></a>
</td>
</tr><tr><th>Fast Move</th><td><a href="/pokemon-move/bite">Bite</a></td></tr><tr><th>Charge Move</th><td><a href="/pokemon-move/crunch">Crunch</a></td></tr></table></div>
</div>
</div>
</div>
<div class="field__item"> <div class="paragraph paragraph--type--text paragraph--view-mode--default">
<div class="clearfix text-formatted field field--name-field-text field--type-text-long field--label-hidden field__item"><table><tr><th>Strength</th>
<td><center><b>5</b> / 5</center></td>
</tr><tr><td colspan="2">Very powerful Pokémon.</td>
</tr><tr><th>Meta-relevance</th>
<td><center><b>4</b> / 5</center></td>
</tr><tr><td colspan="2">Best answer to Mewtwo and many Psychic-type legendaries to come. Also a great gym sweeper.</td>
</tr><tr><th>Future-proof</th>
<td><center><b>4</b> / 5</center></td>
</tr><tr><td colspan="2">Yveltal (Gen 6) is quite far away.</td>
</tr></table></div>
</div>
</div>
<div class="field__item"> <div class="paragraph paragraph--type--scrollto paragraph--view-mode--default">
<div id="dragon1"></div>
</div>
</div>
<div class="field__item"> <div class="paragraph paragraph--type--title paragraph--view-mode--default">
<div class="field field--name-field-title field--type-string field--label-hidden field__item">Dragon Type: Dragonite</div>
</div>
</div>
<div class="field__item"> <div class="paragraph paragraph--type--two-column-1-4 paragraph--view-mode--default">
<div class="column-1-4-container">
<div class="field field--name-field-left-pokemon field--type-entity-reference field--label-hidden field__items">
<div class="field__item"><article id="node-293" class="" data-history-node-id="293" role="article" about="/pokemon/149">
<h2><a href="/pokemon/149" rel="bookmark"><span class="field field--name-title field--type-string field--label-hidden">Dragonite</span>
</a></h2>
<a href="/pokemon/149"><img src="/sites/default/files/styles/50x50/public/2016-07/149.png?itok=apT2zzcj" width="54" height="50" alt="Dragonite" typeof="foaf:Image" class="image-style-_0x50" />
</a>
</article></div>
</div>
<div class="clearfix text-formatted field field--name-field-right-explanation field--type-text-long field--label-hidden field__item"><table><tr><th>Specialty</th>
<td>
<a href="https://pokemongo.gamepress.gg/pokemon-list#dragon" target="_blank"><img src="https://pokemongo.gamepress.gg/sites/default/files/2016-07/dragon.gif" /></a>
</td>
</tr><tr><th>Fast Move</th><td><a href="/pokemon-move/dragon-breath">Dragon Breath</a> / <a href="/pokemon-move/dragon-tail">Dragon Tail</a></td></tr><tr><th>Charge Move</th><td><a href="/pokemon-move/outrage">Outrage</a> / <a href="/pokemon-move/dragon-claw">Dragon Claw</a></td></tr></table></div>
</div>
</div>
</div>
<div class="field__item"> <div class="paragraph paragraph--type--text paragraph--view-mode--default">
<div class="clearfix text-formatted field field--name-field-text field--type-text-long field--label-hidden field__item"><table><tr><th>Strength</th>
<td><center><b>5</b> / 5</center></td>
</tr><tr><td colspan="2">Very powerful Pokémon with strong move options.</td>
</tr><tr><th>Meta-relevance</th>
<td><center><b>4</b> / 5</center></td>
</tr><tr><td colspan="2">Premiere generalist of the game, with few types resisting Dragon attacks.</td>
</tr><tr><th>Future-proof</th>
<td><center><b>1</b> / 5</center></td>
</tr><tr><td colspan="2">Rayquaza is imminent. There will also be many extremely powerful Dragon-type legendaries, such as Palkia (Gen 4), Dialga (Gen 4), Giratina (Gen 4), Reshiram (Gen 5) and Zekrom (Gen 5). Depending on the accessibility of those mentioned above, Dragonite might still be the choice of the majority. It has flexible move options as well.</td>
</tr></table></div>
</div>
</div>
<div class="field__item"> <div class="paragraph paragraph--type--scrollto paragraph--view-mode--default">
<div id="electric1"></div>
</div>
</div>
<div class="field__item"> <div class="paragraph paragraph--type--title paragraph--view-mode--default">
<div class="field field--name-field-title field--type-string field--label-hidden field__item">Electric Type: Raikou</div>
</div>
</div>
<div class="field__item"> <div class="paragraph paragraph--type--two-column-1-4 paragraph--view-mode--default">
<div class="column-1-4-container">
<div class="field field--name-field-left-pokemon field--type-entity-reference field--label-hidden field__items">
<div class="field__item"><article id="node-3521" class="" data-history-node-id="3521" role="article" about="/pokemon/243">
<h2><a href="/pokemon/243" rel="bookmark"><span class="field field--name-title field--type-string field--label-hidden">Raikou</span>
</a></h2>
<a href="/pokemon/243"><img src="/sites/default/files/styles/50x50/public/2016-09/243.png?itok=U4sOBGLP" width="50" height="50" alt="Raikou" typeof="foaf:Image" class="image-style-_0x50" />
</a>
</article></div>
</div>
<div class="clearfix text-formatted field field--name-field-right-explanation field--type-text-long field--label-hidden field__item"><table><tr><th>Specialty</th>
<td>
<a href="https://pokemongo.gamepress.gg/pokemon-list#water" target="_blank"><img src="/sites/default/files/2016-07/water.gif" /></a> 
<a href="https://pokemongo.gamepress.gg/pokemon-list#flying" target="_blank"><img src="/sites/default/files/2016-07/flying.gif" /></a>
</td>
</tr><tr><th>Fast Move</th><td><a href="/pokemon-move/thunder-shock">Thunder Shock</a></td></tr><tr><th>Charge Move</th><td><a href="/pokemon-move/wild-charge">Wild Charge</a></td></tr></table></div>
</div>
</div>
</div>
<div class="field__item"> <div class="paragraph paragraph--type--text paragraph--view-mode--default">
<div class="clearfix text-formatted field field--name-field-text field--type-text-long field--label-hidden field__item"><table><tr><th>Strength</th>
<td><center><b>4</b> / 5</center></td>
</tr><tr><td colspan="2">Very powerful Pokémon with strong move options.</td>
</tr><tr><th>Meta-relevance</th>
<td><center><b>5</b> / 5</center></td>
</tr><tr><td colspan="2">Optimal DPS counter to Water-type and Flying-type in the game. Both countered types are popular in gyms and raids.</td>
</tr><tr><th>Future-proof</th>
<td><center><b>3</b> / 5</center></td>
</tr><tr><td colspan="2">Zekrom (Gen 5) is somewhat far away but will be better than Raikou if having satisfactory moves.</td>
</tr></table></div>
</div>
</div>
<div class="field__item"> <div class="paragraph paragraph--type--scrollto paragraph--view-mode--default">
<div id="fairy1"></div>
</div>
</div>
<div class="field__item"> <div class="paragraph paragraph--type--title paragraph--view-mode--default">
<div class="field field--name-field-title field--type-string field--label-hidden field__item">Fairy Type: Gardevoir</div>
</div>
</div>
<div class="field__item"> <div class="paragraph paragraph--type--two-column-1-4 paragraph--view-mode--default">
<div class="column-1-4-container">
<div class="field field--name-field-left-pokemon field--type-entity-reference field--label-hidden field__items">
<div class="field__item"><article id="node-241831" class="" data-history-node-id="241831" role="article" about="/pokemon/282">
<h2><a href="/pokemon/282" rel="bookmark"><span class="field field--name-title field--type-string field--label-hidden">Gardevoir</span>
</a></h2>
<a href="/pokemon/282"><img src="/sites/default/files/styles/50x50/public/2017-08/282_0.png?itok=cAX4H0Uw" width="50" height="50" alt="Gardevoir" typeof="foaf:Image" class="image-style-_0x50" />
</a>
</article></div>
</div>
<div class="clearfix text-formatted field field--name-field-right-explanation field--type-text-long field--label-hidden field__item"><table><tr><th>Specialty</th>
<td>
<a href="https://pokemongo.gamepress.gg/pokemon-list#fighting" target="_blank"><img src="/sites/default/files/2016-07/fighting.gif" /></a> 
<a href="https://pokemongo.gamepress.gg/pokemon-list#dark" target="_blank"><img src="/sites/default/files/2016-07/dark.gif" /></a> 
<a href="https://pokemongo.gamepress.gg/pokemon-list#dragon" target="_blank"><img src="/sites/default/files/2016-07/dragon.gif" /></a>
</td>
</tr><tr><th>Fast Move</th><td><a href="/pokemon-move/confusion">Confusion</a></td></tr><tr><th>Charge Move</th><td><a href="/pokemon-move/dazzling-gleam">Dazzling Gleam</a></td></tr></table></div>
</div>
</div>
</div>
<div class="field__item"> <div class="paragraph paragraph--type--text paragraph--view-mode--default">
<div class="clearfix text-formatted field field--name-field-text field--type-text-long field--label-hidden field__item"><table><tr><th>Strength</th>
<td><center><b>3</b> / 5</center></td>
</tr><tr><td colspan="2">Overall strong, but somewhat fragile. Lacking a Fairy-type fast move is its (and every Fairy-type’s) major downside.</td>
</tr><tr><th>Meta-relevance</th>
<td><center><b>3</b> / 5</center></td>
</tr><tr><td colspan="2">Ice-types usually perform better when countering Dragon-types. As for Dark and Fighting, there are better options. Overall useful but always suboptimal. Will see more use in Latios/Latias raid.</td>
</tr><tr><th>Future-proof</th>
<td><center><b>2</b> / 5</center></td>
</tr><tr><td colspan="2">Togekiss (Gen 4) is its most imminent competitor. Sylveon (Gen 6), an Eeveelution, will be more accessible and more powerful. But Xerneas (Gen 6), the legendary Fairy-type, will beat every other Fairy-type.</td>
</tr></table></div>
</div>
</div>
<div class="field__item">
<center>
<div class="desktop-ic-ad" style="display:none;">
<hr />
<div class="desktop-ic-ad-inner">
<div id='div-ad-PokemonGo_Desktop_InContent_300x250_A'>
<script>
if(detectWidth() > 980) { googletag.cmd.push(function() { googletag.display('div-ad-PokemonGo_Desktop_InContent_300x250_A'); }); }
</script>
</div>
</div>
<hr />
</div>
</center>
<center>
<div class="mobile-ic-ad" style="display:none;">
<hr />
<div class="mobile-ic-ad-inner">
<div id='div-ad-PokemonGo_Mobile_300x250_BTF_2'>
<script>
if(detectWidth() <= 980) { googletag.cmd.push(function() { googletag.display('div-ad-PokemonGo_Mobile_300x250_BTF_2'); }); }
</script>
</div>
</div>
<hr />
</div>
</center>
</div>
<div class="field__item"> <div class="paragraph paragraph--type--scrollto paragraph--view-mode--default">
<div id="fighting1"></div>
</div>
</div>
<div class="field__item"> <div class="paragraph paragraph--type--title paragraph--view-mode--default">
<div class="field field--name-field-title field--type-string field--label-hidden field__item">Fighting Type: Machamp</div>
</div>
</div>
<div class="field__item"> <div class="paragraph paragraph--type--two-column-1-4 paragraph--view-mode--default">
<div class="column-1-4-container">
<div class="field field--name-field-left-pokemon field--type-entity-reference field--label-hidden field__items">
<div class="field__item"><article id="node-166" class="" data-history-node-id="166" role="article" about="/pokemon/68">
<h2><a href="/pokemon/68" rel="bookmark"><span class="field field--name-title field--type-string field--label-hidden">Machamp</span>
</a></h2>
<a href="/pokemon/68"><img src="/sites/default/files/styles/50x50/public/2016-07/68.png?itok=BGg8PzvU" width="54" height="50" alt="Machamp" typeof="foaf:Image" class="image-style-_0x50" />
</a>
</article></div>
</div>
<div class="clearfix text-formatted field field--name-field-right-explanation field--type-text-long field--label-hidden field__item"><table><tr><th>Specialty</th>
<td>
<a href="https://pokemongo.gamepress.gg/pokemon-list#normal" target="_blank"><img src="/sites/default/files/2016-07/normal.gif" /></a> 
<a href="https://pokemongo.gamepress.gg/pokemon-list#rock" target="_blank"><img src="/sites/default/files/2016-07/rock.gif" /></a> 
<a href="https://pokemongo.gamepress.gg/pokemon-list#steel" target="_blank"><img src="/sites/default/files/2016-07/steel.gif" /></a> 
<a href="https://pokemongo.gamepress.gg/pokemon-list#dark" target="_blank"><img src="/sites/default/files/2016-07/dark.gif" /></a> 
<a href="https://pokemongo.gamepress.gg/pokemon-list#ice" target="_blank"><img src="/sites/default/files/2016-07/ice.gif" /></a>
</td>
</tr><tr><th>Fast Move</th><td><a href="/pokemon-move/counter">Counter</a></td></tr><tr><th>Charge Move</th><td><a href="/pokemon-move/dynamic-punch">Dynamic Punch</a></td></tr></table></div>
</div>
</div>
</div>
<div class="field__item"> <div class="paragraph paragraph--type--text paragraph--view-mode--default">
<div class="clearfix text-formatted field field--name-field-text field--type-text-long field--label-hidden field__item"><table><tr><th>Strength</th>
<td><center><b>4</b> / 5</center></td>
</tr><tr><td colspan="2">Solid stats paired with wonderful moves.</td>
</tr><tr><th>Meta-relevance</th>
<td><center><b>5</b> / 5</center></td>
</tr><tr><td colspan="2">Definite answer to most common gym defenders. Optimal counter to Tyranitar, a popular raid boss. Fighting-type will always be very relevant as it has wide coverage.</td>
</tr><tr><th>Future-proof</th>
<td><center><b>3</b> / 5</center></td>
</tr><tr><td colspan="2">Machamp faces more threats in the long future. The closest one is Gallade (Gen 4). Even if it survives that again, it will eventually be out-classed by Conkeldurr (Gen 5), let alone the legendary Terrakion/Keldeo (Gen 5) and Buzzwole (Gen 7).</td>
</tr></table></div>
</div>
</div>
<div class="field__item"> <div class="paragraph paragraph--type--scrollto paragraph--view-mode--default">
<div id="fire1"></div>
</div>
</div>
<div class="field__item"> <div class="paragraph paragraph--type--title paragraph--view-mode--default">
<div class="field field--name-field-title field--type-string field--label-hidden field__item">Fire Type: Moltres &amp; Entei</div>
</div>
</div>
<div class="field__item"> <div class="paragraph paragraph--type--two-column-1-4 paragraph--view-mode--default">
<div class="column-1-4-container">
<div class="field field--name-field-left-pokemon field--type-entity-reference field--label-hidden field__items">
<div class="field__item"><article id="node-290" class="" data-history-node-id="290" role="article" about="/pokemon/146">
<h2><a href="/pokemon/146" rel="bookmark"><span class="field field--name-title field--type-string field--label-hidden">Moltres</span>
</a></h2>
<a href="/pokemon/146"><img src="/sites/default/files/styles/50x50/public/2016-07/146.png?itok=eS43SnA1" width="54" height="50" alt="Moltres" typeof="foaf:Image" class="image-style-_0x50" />
</a>
</article></div>
</div>
<div class="clearfix text-formatted field field--name-field-right-explanation field--type-text-long field--label-hidden field__item"><table><tr><th>Specialty</th>
<td>
<a href="https://pokemongo.gamepress.gg/pokemon-list#grass" target="_blank"><img src="/sites/default/files/2016-07/grass.gif" /></a> 
<a href="https://pokemongo.gamepress.gg/pokemon-list#bug" target="_blank"><img src="/sites/default/files/2016-07/bug.gif" /></a> 
<a href="https://pokemongo.gamepress.gg/pokemon-list#ice" target="_blank"><img src="/sites/default/files/2016-07/ice.gif" /></a> 
<a href="https://pokemongo.gamepress.gg/pokemon-list#steel" target="_blank"><img src="/sites/default/files/2016-07/steel.gif" /></a>
</td>
</tr><tr><th>Fast Move</th><td><a href="/pokemon-move/fire-spin">Fire Spin</a></td></tr><tr><th>Charge Move</th><td><a href="/pokemon-move/overheat">Overheat</a></td></tr></table></div>
</div>
</div>
</div>
<div class="field__item"> <div class="paragraph paragraph--type--two-column-1-4 paragraph--view-mode--default">
<div class="column-1-4-container">
<div class="field field--name-field-left-pokemon field--type-entity-reference field--label-hidden field__items">
<div class="field__item"><article id="node-3526" class="" data-history-node-id="3526" role="article" about="/pokemon/244">
<h2><a href="/pokemon/244" rel="bookmark"><span class="field field--name-title field--type-string field--label-hidden">Entei</span>
</a></h2>
<a href="/pokemon/244"><img src="/sites/default/files/styles/50x50/public/2016-09/244.png?itok=ZUV-35Az" width="50" height="50" alt="Entei" typeof="foaf:Image" class="image-style-_0x50" />
</a>
</article></div>
</div>
<div class="clearfix text-formatted field field--name-field-right-explanation field--type-text-long field--label-hidden field__item"><table><tr><th>Specialty</th>
<td>
<a href="https://pokemongo.gamepress.gg/pokemon-list#grass" target="_blank"><img src="/sites/default/files/2016-07/grass.gif" /></a> 
<a href="https://pokemongo.gamepress.gg/pokemon-list#bug" target="_blank"><img src="/sites/default/files/2016-07/bug.gif" /></a> 
<a href="https://pokemongo.gamepress.gg/pokemon-list#ice" target="_blank"><img src="/sites/default/files/2016-07/ice.gif" /></a> 
<a href="https://pokemongo.gamepress.gg/pokemon-list#steel" target="_blank"><img src="/sites/default/files/2016-07/steel.gif" /></a>
</td>
</tr><tr><th>Fast Move</th><td><a href="/pokemon-move/fire-spin">Fire Spin</a></td></tr><tr><th>Charge Move</th><td><a href="/pokemon-move/overheat">Overheat</a> / <a href="/pokemon-move/flamethrower">Flamethrower</a></td></tr></table></div>
</div>
</div>
</div>
<div class="field__item"> <div class="paragraph paragraph--type--text paragraph--view-mode--default">
<div class="clearfix text-formatted field field--name-field-text field--type-text-long field--label-hidden field__item"><table><tr><th>Strength</th>
<td><center><b>4</b> / 5</center></td>
</tr><tr><td colspan="2">Both have solid stats paired with wonderful moves.</td>
</tr><tr><th>Meta-relevance</th>
<td><center><b>2</b> / 5</center></td>
</tr><tr><td colspan="2">Fire-type aren’t demanded, but occasionally useful. Will see more use in the future.</td>
</tr><tr><th>Future-proof</th>
<td><center><b>3</b> / 5</center></td>
</tr><tr><td colspan="2">Heatran (Gen 4) is their most imminent competitor. Reshiram (Gen 5) and Volcarona (Gen 5) are further but greater threats.</td>
</tr></table></div>
</div>
</div>
<div class="field__item"> <div class="paragraph paragraph--type--scrollto paragraph--view-mode--default">
<div id="flying1"></div>
</div>
</div>
<div class="field__item"> <div class="paragraph paragraph--type--title paragraph--view-mode--default">
<div class="field field--name-field-title field--type-string field--label-hidden field__item">Flying Type: Lugia</div>
</div>
</div>
<div class="field__item"> <div class="paragraph paragraph--type--two-column-1-4 paragraph--view-mode--default">
<div class="column-1-4-container">
<div class="field field--name-field-left-pokemon field--type-entity-reference field--label-hidden field__items">
<div class="field__item"><article id="node-3551" class="" data-history-node-id="3551" role="article" about="/pokemon/249">
<h2><a href="/pokemon/249" rel="bookmark"><span class="field field--name-title field--type-string field--label-hidden">Lugia</span>
</a></h2>
<a href="/pokemon/249"><img src="/sites/default/files/styles/50x50/public/2016-09/249.png?itok=0wCe62cE" width="50" height="50" alt="Lugia" typeof="foaf:Image" class="image-style-_0x50" />
</a>
</article></div>
</div>
<div class="clearfix text-formatted field field--name-field-right-explanation field--type-text-long field--label-hidden field__item"><table><tr><th>Specialty</th>
<td>
<a href="https://pokemongo.gamepress.gg/pokemon-list#grass" target="_blank"><img src="/sites/default/files/2016-07/grass.gif" /> 
</a><a href="https://pokemongo.gamepress.gg/pokemon-list#bug" target="_blank"><img src="/sites/default/files/2016-07/bug.gif" /> 
</a><a href="https://pokemongo.gamepress.gg/pokemon-list#fighting" target="_blank"><img src="/sites/default/files/2016-07/fighting.gif" /></a></td>
</tr><tr><th>Fast Move</th><td><a href="/pokemon-move/extrasensory">Extrasensory</a></td></tr><tr><th>Charge Move</th><td><a href="/pokemon-move/sky-attack">Sky Attack</a></td></tr></table></div>
</div>
</div>
</div>
<div class="field__item"> <div class="paragraph paragraph--type--text paragraph--view-mode--default">
<div class="clearfix text-formatted field field--name-field-text field--type-text-long field--label-hidden field__item"><table><tr><th>Strength</th>
<td><center><b>4</b> / 5</center></td>
</tr><tr><td colspan="2">Very bulky and reliable Pokémon. Great counter to fighting types.</td>
</tr><tr><th>Meta-relevance</th>
<td><center><b>2</b> / 5</center></td>
</tr><tr><td colspan="2">Fire-types and Psychic types handle its coverage better. Until Pokémon with double weakness to Flying become relevant, Flying-type sees limited use.</td>
</tr><tr><th>Future-proof</th>
<td><center><b>1</b> / 5</center></td>
</tr><tr><td colspan="2">One word: Rayquaza.</td>
</tr></table></div>
</div>
</div>
<div class="field__item">
<center>
<div class="desktop-ic-ad" style="display:none;">
<hr />
<div class="desktop-ic-ad-inner">
<div id='div-ad-PokemonGo_Desktop_InContent_300x250_B'>
<script>
if(detectWidth() > 980) { googletag.cmd.push(function() { googletag.display('div-ad-PokemonGo_Desktop_InContent_300x250_B'); }); }
</script>
</div>
</div>
<hr />
</div>
</center>
<center>
<div class="mobile-ic-ad" style="display:none;">
<hr />
<div class="mobile-ic-ad-inner">
<div id='div-ad-PokemonGo_Mobile_300x250_Extra_1'>
<script>
if(detectWidth() <= 980) { googletag.cmd.push(function() { googletag.display('div-ad-PokemonGo_Mobile_300x250_Extra_1'); }); }
</script>
</div>
</div>
<hr />
</div>
</center>
</div>
<div class="field__item"> <div class="paragraph paragraph--type--scrollto paragraph--view-mode--default">
<div id="ghost1"></div>
</div>
</div>
<div class="field__item"> <div class="paragraph paragraph--type--title paragraph--view-mode--default">
<div class="field field--name-field-title field--type-string field--label-hidden field__item">Ghost Type: Gengar</div>
</div>
</div>
<div class="field__item"> <div class="paragraph paragraph--type--two-column-1-4 paragraph--view-mode--default">
<div class="column-1-4-container">
<div class="field field--name-field-left-pokemon field--type-entity-reference field--label-hidden field__items">
<div class="field__item"><article id="node-227" class="" data-history-node-id="227" role="article" about="/pokemon/94">
<h2><a href="/pokemon/94" rel="bookmark"><span class="field field--name-title field--type-string field--label-hidden">Gengar</span>
</a></h2>
<a href="/pokemon/94"><img src="/sites/default/files/styles/50x50/public/2016-07/94.png?itok=o9gJ6ma3" width="54" height="50" alt="Gengar" typeof="foaf:Image" class="image-style-_0x50" />
</a>
</article></div>
</div>
<div class="clearfix text-formatted field field--name-field-right-explanation field--type-text-long field--label-hidden field__item"><table><tr><th>Specialty</th>
<td>
<a href="https://pokemongo.gamepress.gg/pokemon-list#ghost" target="_blank"><img src="/sites/default/files/2016-07/ghost.gif" /></a> 
<a href="https://pokemongo.gamepress.gg/pokemon-list#psychic" target="_blank"><img src="/sites/default/files/2016-07/psychic.gif" /></a>
</td>
</tr><tr><th>Fast Move</th><td><a href="/pokemon-move/shadow-claw">Shadow Claw</a></td></tr><tr><th>Charge Move</th><td><a href="/pokemon-move/shadow-ball">Shadow Ball</a></td></tr></table></div>
</div>
</div>
</div>
<div class="field__item"> <div class="paragraph paragraph--type--text paragraph--view-mode--default">
<div class="clearfix text-formatted field field--name-field-text field--type-text-long field--label-hidden field__item"><table><tr><th>Strength</th>
<td><center><b>3</b> / 5</center></td>
</tr><tr><td colspan="2">The very definition of Glass Cannon.</td>
</tr><tr><th>Meta-relevance</th>
<td><center><b>4</b> / 5</center></td>
</tr><tr><td colspan="2">Maintain the title of “Highest DPS against Psychic and Ghost”, making it one of the favorite of DPS believers.</td>
</tr><tr><th>Future-proof</th>
<td><center><b>3</b> / 5</center></td>
</tr><tr><td colspan="2">Giratina (Gen 4), a legendary, has lower attack but 3.5x bulk. Eventually, Chandelure (Gen 5), Hoopa (Gen 6) and Lunala (Gen 7) will outclass Gengar.</td>
</tr></table></div>
</div>
</div>
<div class="field__item"> <div class="paragraph paragraph--type--scrollto paragraph--view-mode--default">
<div id="grass1"></div>
</div>
</div>
<div class="field__item"> <div class="paragraph paragraph--type--title paragraph--view-mode--default">
<div class="field field--name-field-title field--type-string field--label-hidden field__item">Grass Type: Exeggutor</div>
</div>
</div>
<div class="field__item"> <div class="paragraph paragraph--type--two-column-1-4 paragraph--view-mode--default">
<div class="column-1-4-container">
<div class="field field--name-field-left-pokemon field--type-entity-reference field--label-hidden field__items">
<div class="field__item"><article id="node-239" class="" data-history-node-id="239" role="article" about="/pokemon/103">
<h2><a href="/pokemon/103" rel="bookmark"><span class="field field--name-title field--type-string field--label-hidden">Exeggutor</span>
</a></h2>
<a href="/pokemon/103"><img src="/sites/default/files/styles/50x50/public/2016-07/103.png?itok=s4ODEoAX" width="54" height="50" alt="Exeggutor" typeof="foaf:Image" class="image-style-_0x50" />
</a>
</article></div>
</div>
<div class="clearfix text-formatted field field--name-field-right-explanation field--type-text-long field--label-hidden field__item"><table><tr><th>Specialty</th>
<td>
<a href="https://pokemongo.gamepress.gg/pokemon-list#water" target="_blank"><img src="/sites/default/files/2016-07/water.gif" /></a> 
<a href="https://pokemongo.gamepress.gg/pokemon-list#rock" target="_blank"><img src="/sites/default/files/2016-07/rock.gif" /></a> 
<a href="https://pokemongo.gamepress.gg/pokemon-list#ground" target="_blank"><img src="/sites/default/files/2016-07/ground.gif" /></a>
</td>
</tr><tr><th>Fast Move</th><td><a href="/pokemon-move/bullet-seed">Bullet Seed</a></td></tr><tr><th>Charge Move</th><td><a href="/pokemon-move/solar-beam">Solar Beam</a></td></tr></table></div>
</div>
</div>
</div>
<div class="field__item"> <div class="paragraph paragraph--type--text paragraph--view-mode--default">
<div class="clearfix text-formatted field field--name-field-text field--type-text-long field--label-hidden field__item"><table><tr><th>Strength</th>
<td><center><b>4</b> / 5</center></td>
</tr><tr><td colspan="2">Good stats distribution with strong charge move.</td>
</tr><tr><th>Meta-relevance</th>
<td><center><b>2</b> / 5</center></td>
</tr><tr><td colspan="2">With the rise of Water-type and the already strong Electric-type, Exeggutor has to seek relevance in Water + Rock/Ground matchups. Being the optimal counter to Solar Beam Groudon is definitely a plus which unfortunately doesn’t last long.</td>
</tr><tr><th>Future-proof</th>
<td><center><b>3</b> / 5</center></td>
</tr><tr><td colspan="2">Tangrowth (Gen 4), Shaymin (Gen 4) and Virizion (Gen 5) are its competitors, all with similar stats but lower attack. However, Tangrowth has the potential to learn Grass Knot/Power Whip, a better charge move than Solar Beam, to get close to or even surpass Exeggutor’s DPS.</td>
</tr></table></div>
</div>
</div>
<div class="field__item"> <div class="paragraph paragraph--type--scrollto paragraph--view-mode--default">
<div id="ground1"></div>
</div>
</div>
<div class="field__item"> <div class="paragraph paragraph--type--title paragraph--view-mode--default">
<div class="field field--name-field-title field--type-string field--label-hidden field__item">Ground Type: Groudon</div>
</div>
</div>
<div class="field__item"> <div class="paragraph paragraph--type--two-column-1-4 paragraph--view-mode--default">
<div class="column-1-4-container">
<div class="field field--name-field-left-pokemon field--type-entity-reference field--label-hidden field__items">
<div class="field__item"><article id="node-242706" class="" data-history-node-id="242706" role="article" about="/pokemon/383">
<h2><a href="/pokemon/383" rel="bookmark"><span class="field field--name-title field--type-string field--label-hidden">Groudon</span>
</a></h2>
<a href="/pokemon/383"><img src="/sites/default/files/styles/50x50/public/2017-08/383_0.png?itok=VYRUsKz3" width="50" height="50" alt="Groudon" typeof="foaf:Image" class="image-style-_0x50" />
</a>
</article></div>
</div>
<div class="clearfix text-formatted field field--name-field-right-explanation field--type-text-long field--label-hidden field__item"><table><tr><th>Specialty</th>
<td>
<a href="https://pokemongo.gamepress.gg/pokemon-list#electr" target="_blank"><img src="/sites/default/files/2016-07/electric.gif" /></a> 
<a href="https://pokemongo.gamepress.gg/pokemon-list#rock" target="_blank"><img src="/sites/default/files/2016-07/rock.gif" /></a> 
<a href="https://pokemongo.gamepress.gg/pokemon-list#poison" target="_blank"><img src="/sites/default/files/2016-07/poison.gif" /></a> 
<a href="https://pokemongo.gamepress.gg/pokemon-list#steel" target="_blank"><img src="/sites/default/files/2016-07/steel.gif" /></a> 
<a href="https://pokemongo.gamepress.gg/pokemon-list#fire" target="_blank"><img src="/sites/default/files/2016-07/fire.gif" /></a>
</td>
</tr><tr><th>Fast Move</th><td><a href="/pokemon-move/mud-shot">Mud Shot</a></td></tr><tr><th>Charge Move</th><td><a href="/pokemon-move/earthquake">Earthquake</a></td></tr></table></div>
</div>
</div>
</div>
<div class="field__item"> <div class="paragraph paragraph--type--text paragraph--view-mode--default">
<div class="clearfix text-formatted field field--name-field-text field--type-text-long field--label-hidden field__item"><table><tr><th>Strength</th>
<td><center><b>5</b> / 5</center></td>
</tr><tr><td colspan="2">Extremely powerful. If un-nerfed, definitely overpowered.</td>
</tr